2012-04-19 22 views
2

我已經用eclipse寫了一個java項目。現在我想在maven下管理它。 移植的方法是我用m2eclipse創建一個新的maven項目,並將所有java和使用的jar複製到相應的目錄中,這意味着我將java文件放到src/main/java中,並將jar文件放到src/main /資源。如何移植eclipse 2 maven

問題是: 當我用maven構建這個項目時,結果jar中的清單文件包含No classpath info。

我發現我可以使用本地maven回購,但我不認爲這是一個很好的解決方案。

我想在src/main /資源目錄中使用jar,並且我想將jar名稱寫入清單文件中。

我該怎麼辦?

+0

「寫罐子名進入清單文件」是指把罐子名到類路徑中manifiest文件.. – CodeBoy 2012-04-19 09:14:03

+1

看來你不」真的得到了Maven的實際內容。依賴管理是其最有價值的特性之一。你想要做的就是反對Maven哲學。它聞起來像螞蟻。 – 2012-04-19 09:21:31

回答

3

首先,如果您要將現有項目轉換爲Maven,則需要一個嚮導來執行該操作,該功能可以讓您執行此操作。在Eclipse Indigo的m2e中,可以在下找到Maven>啓用Maven自然

類路徑的信息添加到清單,你可以使用Maven的JAR-插件配置是這樣的:

<plugin> 
    <artifactId>maven-jar-plugin</artifactId> 
    <configuration> 
     <archive> 
     <manifest> 
      <addClasspath>true</addClasspath> 
      <classpathPrefix>lib</classpathPrefix> 
     </manifest> 
     </archive> 
    </configuration> 
    </plugin> 

這將類路徑條目添加到清單,並會參考每個jar文件一個名爲lib的目錄。

在您的運行時環境中,您只需確保lib目錄存在(位於可執行jar文件旁邊)幷包含所需的庫。如果你想自動完成這個,你可以使用Maven的大會插件http://maven.apache.org/plugins/maven-assembly-plugin/

+0

順便說一句:這看起來像一個幾乎相同的問題,它也有一個答案中的程序集配置示例:http://stackoverflow.com/questions/10224631/how-do-you-create-a-standalone-應用程序有依賴性,完整,使用Maven的 – nwinkler 2012-04-19 09:30:17