【发布时间】:2018-03-20 23:52:35
【问题描述】:
我确信这是一个愚蠢的问题,每个 Java 程序员都曾问过这个问题。但我根本找不到相关问题。
这涉及子目录,但我没有任何子目录,因为它们都与 java 文件位于同一目录中,并且我从 Executable jar file error 执行命令行的目录
这个解决方案给了我与我在下面写的相同的错误:Java command line with external .jar
其他人(我没有链接)谈论 Eclipse 和其他 IDE,但我没有使用 IDE,只是一个 Linux 终端。
我正在尝试从http://www.hummeling.com/IF97 导入公共 jar 文件。下载的jar文件已重命名为if97.jar。
我有一个名为 steam.java 的 java 文件,其中包含以下命令:
'
import com.hummeling.if97.IF97;
IF97 H2O = new IF97(IF97.UnitSystem.ENGINEERING);
System.out.println("test H2O table PSpecificEnthalpy(1): "+H2O.specificEnthalpyPT(1,300));
System.out.println("test H2O table PSpecificEnthalpy(5): "+H2O.specificEnthalpyPT(5,300));
'
但是我不知道如何在命令行中运行这个文件。
我通过键入成功编译:
'javac -cp if97.jar ~/test/steam.java'
现在我有一个名为 steam.class 的文件
但是当我执行它时:
'java steam -cp if97.jar'
或
'java steam -jar if97.jar'
我得到错误:
Exception in thread "main" java.lang.NoClassDefFoundError: com/hummeling/if97/IF97
at steam.start(steam.java:364)
at steam.main(steam.java:341)
原因:java.lang.ClassNotFoundException: com.hummeling.if97.IF97
我正在尝试使用终端在 Linux Ubuntu 16.04 中执行此操作。这两个文件(steam.java 和 if97.jar)都在我执行 javac & java 命令的同一个主目录中。
我相信(或者我弄错了)问题在于 java 无法找到 jar 文件。但我不知道为什么。
请指教,提前谢谢。
【问题讨论】: