[英]Starting a jar with double click starts in 32bit JVM, but from console in 64bit JVM
[英]Jar not starting on double click, but starts from command line
我正在使用IntelliJ創建JAR文件, 它從命令行運行時正常執行,但雙擊它時,沒有任何反應 。 我從eclipse導出的JAR正常工作,因為我是初學者使用IntelliJ,我的猜測是我做錯了。
我以這種方式導出JAR:
Project structure -> jar -> from modules and dependencies then use this
configuration to build.
不知道為什么每個人都在玩自我執行的罐子。 只需添加一個MANIFEST.MF文件,並將完全限定的主類指定為Main-Class:my.package.MyClass
另外,請確保.jar文件類型的可執行文件類型是Java
完成此操作后,您只需雙擊jar即可執行它。
Intellij不會為您執行JAR。 記住JAR是一個容器,就像你要求執行一個ZIP文件一樣。
我確定你想要的是在你的jar文件中執行一個類。 哪個班級有:
public static void main(String[] args) { ... }
您有兩種選擇:
1)從命令行執行jar
2)右鍵單擊我上面寫的“主”字然后按RUN ..你會看到一個小的綠色箭頭(播放按鈕)。 這是在Intellij中運行類的唯一方法。
希望能幫助到你
如果您的JAR使用jar -jar <file>
從命令行啟動,那么它就像JAR文件一樣可執行(換句話說,元數據指定主類的位置)。 如果您想使用操作系統提供的工具來指定當您雙擊.jar文件時,它應該執行java -jar <file>
,但這超出了JAR文件的范圍。 例如,如果您正在運行Windows,則應該可以按照此處列出的步驟實現此目的。 同樣,這是特定於操作系統的,甚至可能特定於您正在運行的版本,並且實際上只是圍繞雙擊事件執行java -jar
命令的奇特包裝器。
確保為jar設置了x-flag。
java -jar xyz.jar
不需要,但雙擊需要它:
ls -l xyz.jar
chmod 755 xyz.jar
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.