2014-02-28 24 views
1

我在可執行的jar測試中添加了我的maven項目。我編輯了我的pom文件以在src/main/resources中使用主類。但是,當我嘗試運行jar時,找不到我的主類。有什麼想法嗎?在src/main/resources中的Maven Jar主類

+0

補充說明,我看了看jar,我的主類在jar中,我正在使用它的正確路徑。 – Richard

+5

真正的問題是...爲什麼要把主類放到main/resources文件夾中?類應該保留在main/java文件夾中,主資源中的資源... –

+0

我明白了,但這只是一個測試程序,所以我希望它與實際代碼分開。如果不可能,那很好,只是好奇。 – Richard

回答

0

你的java類應該在src/main/java中。

0

爲了開始主類,當你運行java -jar your-executable-jar.jar,你META-INF/MANIFEST.MF文件應包含Main-Class header

Main-Class: con.example.YourClass 

Maven可以生成maven-jar-plugin清單文件:

<project> 
    ... 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-jar-plugin</artifactId> 
     ... 
     <configuration> 
      <archive> 
      <manifest> 
       <mainClass>fully.qualified.MainClass</mainClass> 
      </manifest> 
      </archive> 
     </configuration> 
     ... 
     </plugin> 
    </plugins> 
    </build>