我正在尝试通过命令提示符在java中运行一个简单的代码。 我有一个包含以下内容的jar.java文件:
public class jar{
public void print()
{
System.out.println("Jar success accesing !");
}}
我也有一个调用use jar class的main.java:
public class main{
public static void main (String args[]){
jar jar1 = new jar();
jar1.print();
}}
我只是尝试编译jar.java然后使它成为一个jar存档,然后使用这个jar编译主类,如下所示:
>javac jar.java
>jar cvf JAR.jar jar.class
>javac -cp JAR.jar main.java
现在,直到这里所有的工作都很好,当我想要运行main时它不起作用:
>java -cp JAR.jar main
我明白了:
Error: Could not find or load main class main.class
Caused by: java.lang.ClassNotFoundException: main.class
我哪里错了?
答案 0 :(得分:0)
答案是:
java main
您不需要 -cp ,因为您将所有文件放在同一个文件夹中。 您的代码无法正常工作,因为您覆盖了 -cp (当前目录)的默认值。您的 -cp 仅指向JAR.jar。
类似的解决方案:
java -cp 'main.class;JAR.jar' main
java -cp '.;JAR.jar' main