Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/342.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java.lang.NoClassDefFoundError上遇到问题_Java_Jar_Classpath - Fatal编程技术网

在java.lang.NoClassDefFoundError上遇到问题

在java.lang.NoClassDefFoundError上遇到问题,java,jar,classpath,Java,Jar,Classpath,我在同一个文件夹中有一个test.jar包和一个test.java文件(它不在我的类路径中) 在.java文件中,我导入了.jar包中的一些类。 因此,我转到该文件夹,使用java-classpath test.jar test.java进行编译。一切看起来都很好。然后我使用java测试,它给了我一个错误: Exception in thread "main" java.lang.NoClassDefFoundError:...... 表示无法在.jar文件中找到类 我将文件移动到Eclips

我在同一个文件夹中有一个test.jar包和一个test.java文件(它不在我的类路径中)

.java
文件中,我导入了.jar包中的一些类。
因此,我转到该文件夹,使用
java-classpath test.jar test.java
进行编译。一切看起来都很好。然后我使用
java测试
,它给了我一个错误:

Exception in thread "main" java.lang.NoClassDefFoundError:......
表示无法在.jar文件中找到类


我将文件移动到Eclipse并添加jar文件,它就可以工作了。

您还必须使用类路径运行
java
命令,与编译器相同

正如您使用
javac-classpath test.jar test.java编译代码一样,您应该使用java命令来运行(在类路径中添加jar文件)

java-classpath test.jar test.java

您是否尝试过:
java-classpath test.jar test
?您需要更详细地描述这个问题。。什么是异常/错误跟踪?这与以前的错误相同吗?线程“main”java.lang.NoClassDefFoundError:Test/jav a中的异常由以下原因引起:java.lang.ClassNotFoundException:Teest.java位于java.net.URLClassLoader$1.run(URLClassLoader.java:202)位于java.security.AccessController.doPrivileged(本机方法)位于java.net.URLClassLoader.findClass(URLClassLoader.java:190)位于java.lang.ClassLoader.loadClass(ClassLoader.java:307)位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)位于java.lang.ClassLoader.loadClass(ClassLoader.java:248)找不到主类:Test.java.Program will exit.try
java-jar Test.jar Test
但是我显然在Test.java文件中有主类,我的意思是没有.java部分的try Test..这可能是一个原因..另外,如果测试类在包中,您需要使用完全限定的java类,例如
com.example.Test