我正在尝试使用cmd运行Java程序。
当我使用
javac helloworld.java它工作得很完美,但是当我试图运行该文件时,我使用
java helloworld我收到一个错误:
找不到或加载主类。
即使我把我的javac路径放在系统变量中的类路径中,javac也能正常工作。
在搜索了如何修复它之后,我发现我可以用
java -cp . helloworld因为它允许您找到.class文件。
它可以工作,但我知道我可以在没有这个-cp的情况下运行java程序,那么这是为了什么,以及我如何没有它来运行我的程序呢?
发布于 2014-04-03 15:19:19
-cp为要启动的JRE指定Java。查找环境变量CLASSPATH并添加'.'。
发布于 2014-04-03 15:26:36
-cp用于为jar文件设置classpath,此标志与将jar文件的importing设置为eclipse相同,然后使用它。如果您希望在没有此标志的情况下运行,则应在运行之前设置类路径。
export CLASSPATH=path/to/your/jarfile.jar如果您已经有了一些类路径集
export CLASSPATH=$CLASSPATH:path/to/your/jarfile.jar如果您想包括当前目录
export CLASSPATH=$CLASSPATH:path/to/your/jarfile.jar:.发布于 2014-04-03 15:28:44
正如其他人提到的,您可以设置CLASSPATH。但是,更好的方法是将.class文件捆绑在JAR和用户java -jar nameofthejar.jar中。
https://stackoverflow.com/questions/22841911
复制相似问题