2010-09-15 91 views
1

行家依賴我有一個(自定義)嵌入碼頭啓動,我一直在使用,開發/測試我的web應用程序(移動到Maven之前)。忽略了在特定執行階段

我能夠欺騙m2eclipse的進入將Maven的管理依賴於庫war文件到類路徑啓動(從日食時運行)。我這樣做是通過創建同一工件兩個依賴:類型的「戰爭」和一個類型爲「罐子」之一(「罐子」的依賴技巧的m2eclipse去做我想要的)。

然而,當它找不到戰爭項目罐子Maven的組裝插件的發射失敗。

問:我可以告訴maven在運行包目標時忽略jar依賴嗎?

更詳細的背景: 我有一個webapp.war項目和一個碼頭,啓動項目,移動到Maven之前;我有一個eclipse項目依賴項,以便啓動程序在運行時擁有所有的戰爭依賴項。爲了測試變化,所有東西都跑出ide(不需要重新構建warfile)。

移動到Maven後,這種做法是撲空,因爲m2eclipse的知道不包括罐所依賴的庫(因爲他們是戰爭作用域)。

回答

1

我解決此得到了通過使用一個單獨的.m2 /設置-eclipse.xml(對於蝕)其中,I過度騎依賴性的默認類型。所以在我的發射器POM中,我有:

<dependency> 
    <groupId>com.myco</groupId> 
    <artifactId>my-server</artifactId> 
    <version>${project.version}</version> 

    <!-- here we want eclipse to see "jar" but command line to see "war" --> 
    <type>${jetty.launcher.workaround}</type> 
</dependency> 

我仍然想知道是否有直接的方法來處理原始問題。

-2

它可能爲時已晚,但是這可能是有用的人:

<optional>true</optional> 
</dependency> 

所以,加<optional>true</optional>到你的pom.xml