我想在windows中运行一个java项目。我首先在linux中编译.class文件。复制回Windows。现在路径H:\deletefiles
下有delete.class, delete.java, a.jar, b.jar
。类删除包是deleteFiles
。
我的java类路径是C:\program Files\Java\jre7\bin
,我没有写入权限。
我在命令提示符C:\program Files\Java\jre7\bin>
java -cp H:\deleteFiles\deleteFiles.delete
始终有问题无法找到或加载主类,有什么问题?感谢
答案 0 :(得分:2)
您缺少要运行的实际类。 -cp H:\deleteFiles\deleteFiles.delete
仅定义要使用的类路径,但不定义要运行的类(并且您还将类路径限制为单个类)。
你想要的是:
java -cp H:\deleteFiles\deleteFiles delete
注意H:\deleteFiles\deleteFiles
之间的空白(空格),这意味着您将两个参数传递给java命令:
-cp H:\deleteFiles\deleteFiles
- 要使用的类路径delete
- 要运行的课程如果您需要属于jar文件的类,您还需要将它们添加到类路径中:
java -cp H:\deleteFiles\deleteFiles;H:\deleteFiles\deleteFiles\a.jar;H:\deleteFiles\deleteFiles\b.jar delete
答案 1 :(得分:0)
你应该在你的java命令行中调用delete.class,如下所示:
java -cp H:\ deleteFiles \ delete
答案 2 :(得分:0)
您需要将类路径设置为包含包层次结构的位置。如果您的包名为deleteFiles
,则该位置需要包含名为deleteFiles
的目录,其中包含类文件。
在您的示例中,您将使用它运行它
java -cp H:\ deleteFiles.delete
答案 3 :(得分:0)
要执行Java程序,您有两个选择。使用类文件或使用jar文件。 如果您的程序只包含一个源文件,那么执行该类文件就可以了。但如果您有多个来源,则必须复制所有来源。然后一个罐子会更实用。
上课:
java -cp <class path> <class name>
对于jar(如果设置了主类):
java -jar <jar file>