即使将jar添加到类路径中,也没有类def def发现错误

时间:2018-05-31 04:15:25

标签: java cmd classpath noclassdeffounderror

我正在从命令行运行Java程序。我指的是只有一个外部jar文件。我已经在classpath中添加了该jar的完整路径。即使这样,我在命令行中运行程序时也没有发现类def def found错误。程序编译没有任何错误。

2 个答案:

答案 0 :(得分:1)

我认为您遵守并运行了这样的Java程序

javac -cp fullyqualifiedPathToExternalJar yourfilepath/filename.java
java -cp fullyqualifiedPathToExternalJar yourfilepath/filename
  

这是完全错误的。当您以这种方式编译和运行时,程序编译成功但不运行。这是因为您必须正确遵循java命令的语法。

用于编译其Ok。

javac -cp fullyqualifiedPathToExternalJar yourfilepath/filename.java

要运行程序,您必须将文件路径添加到类路径中:

java -cp fullyqualifiedPathToExternalJar;yourfilepath filename.java //in windows
java -cp fullyqualifiedPathToExternalJar:yourfilepath filename.java //in linux

语法是

javac example.java
java example

with folderpath

javac /home/admin/example.java
java -cp /home/admin example//only class name

答案 1 :(得分:0)

可能是jar兼容性问题的可能性。检查你相互依赖的jar版本。