我正在尝试使用命令行语法运行基于java的工具,如下所示:java -cp archive.jar archiveFolder.theMainClassName.虽然我正在搜索的类,主类,"theMainClassName"在archive.jar中,在输入中给出的archiveFolder中,我不断收到我的类没有看到的错误.有没有人对这个问题有任何想法?先感谢您
下面是一个具体的例子做的工作,这样你可以比较你自己的情况.
将此代码放在任何位置,放在一个名为的文件中MainClass.java
.(我假设了一个src
稍后调用的目录.当然,通常你会安排源代码来匹配包.)
package archiveFolder; public class MainClass { public static void main(String[] args) { System.out.println("I'm MainClass"); } }
然后运行以下每个命令:
# Compile the source javac -d . src/MainClass.java # Build the jar file jar cf archive.jar archiveFolder # Remove the unpackaged binary, to prove it's not being used rm -rf archiveFolder # Or rmdir /s /q archiveFolder on Windows # Execute the class java -cp archive.jar achiveFolder.MainClass
结果:
I'm MainClass
你是如何构建jar文件的?代码是否在相应的包中?