簡體   English   中英

如何創建.jar來運行命令行應用程序

[英]how do I create a .jar to run command line application

為方便起見,我將使用hello world ...

public class HelloWorld{

    public static void main (String [] args){
        System.out.println("Hello World");
    }
}

按照您的想象編譯並運行正常。 然后制作了一個文件Manifest.txt,其中包含:

Main-Class: HelloWorld

然后跑了:

jar -cfm Hello.jar Manifest.txt *.class

但是,當我雙擊生成的Hello.jar時,沒有任何反應。 我希望控制台至少能快速彈出......(事實上我有一個更復雜的程序等待輸入)

任何想法為什么這不起作用?

它在任務管理器(窗口)中啟動一個進程,但沒有cmd打開

確保清單文件中的Main-Class行之后是空行!
難以置信,但是規范要求清單文件的每一行(包括最后一行)都以換行符終止。

編輯:
如果問題只是雙擊,請嘗試(假設Windows):

assoc .jar=jarfile
ftype jarfile="<JRE directory>\bin\javaw.exe" -jar "%1" %*

(使用不帶參數的這些來檢查實際設置)

您的客戶端將需要JRE來運行Java程序-上述設置通常是通過安裝JRE完成的。

EDIT2:
使用java.exe而不是javaw.exe來查看標准控制台(如果您的程序沒有GUI)

嘗試從命令行執行

java -jar /path/to/YourJar.jar

確保您有Main-Class條目


也可以看看

清單需要命名為MANIFEST.MF,它需要駐留在名為META-INF的頂級目錄中。 然后它應該工作。

您應該嘗試JSmooth 它將您的jar文件包裝到Windows可執行文件中。

暫無
暫無

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

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