簡體   English   中英

使用導入的jar的Java命令行

[英]Java command line using an imported jar

我敢肯定這是一個愚蠢的問題,以前每個Java程序員都必須問過。 但是我根本找不到相關的問題。

這里討論的是子目錄,但是我沒有任何子目錄,因為它們都位於與java文件相同的目錄中,並且我從可執行jar文件錯誤中執行了命令行

此解決方案給了我與以下相同的錯誤: 帶有外部.jar的Java命令行

其他人(我沒有鏈接)談論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

我正在嘗試使用Terminal在Linux Ubuntu 16.04中執行此操作。 這兩個文件(steam.java和if97.jar)都位於我在其上執行javac&java命令的同一主目錄中。

我相信(或者我弄錯了)問題是Java無法找到jar文件。 但是我不知道為什么。

請指教,謝謝。

您需要在JVM選項之后指定類名,因為類名后面的任何內容都被視為該類的參數,而不是JVM。

嘗試這個:

'java -cp if97.jar steam'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM