2017-05-07 120 views
1

我有java項目。當我將它導出到file.jar時,無法用雙擊打開它。導出Java項目.jar

當我用命令行測試:

java -jar file.jar 

它顯示消息:

無主清單屬性

但:

java -cp app.jar com.somepackage.SomeClass 

它完美運行。

我使用IntelliJ IDEA和maven。 清單代碼:

Manifest-Version: 1.0 
Main-Class: StructureClasses.Main 
+0

答案在這裏:http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven –

+0

可能重複的[我如何創建一個可執行JAR與依賴使用Maven?](http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven) – Ice

+0

請參閱http:// stackoverflow .com/a/42200519/104891爲示例項目。 – CrazyCoder

回答

1

如果要導入的任何圖片或使用不file.jar創建一個文件夾,並把所有的其他文件中使用file.jar該文件夾中的文件與任何其他文件。罐。

+0

這是同樣的問題 –

0

如果您已經在使用Maven,請查看maven-assembly-plugin。我認爲它已經做到了你想要的是mainClass屬性。

這是從official page

<plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <version>3.0.0</version> 
    <configuration> 
     [...] 
     <archive> 
     <manifest> 
      <mainClass>org.sample.App</mainClass> 
     </manifest> 
     </archive> 
    </configuration> 
    [...] 
    </plugin> 

利用這種配置的例子,你現在應該能夠運行jar文件要麼雙擊或java -jar。請記住,mainClass屬性必須是該類的完全限定名稱。