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