2011-01-26 41 views
4

當使用m2eclipse的 ...如果你在Maven項目單擊鼠標右鍵,從彈出菜單中選擇屬性,您輸入項目選項對話框,其中有一個Maven->生命週期部分允許定製哪些構建階段應該綁定到構建生命週期,只要項目是刷新或清理。然而,這些自定義是粗粒度的,在「項目配置更新」時會丟失(同樣,如果你把文件「org.maven.ide.eclipse.prefs」,這些設置保存在版本控制下......在項目導入,該文件將被覆蓋)。如何使用m2eclipse-type項目的自定義生命週期?

尋找解決的辦法,我發現this answer from pascal-thivent,他介紹了「如何創建項目的偏好一個新的Maven構建......」這的確在我的情況不是很幫助,因爲「創造新-Builder的對話「在我的Eclipse設置中不幸的是找不到這樣的Maven Builder。現有的構建器已禁用「Edit-Builder」按鈕。

+0

發現,新的建造者 - 對話框,由帕斯卡爾所說,與調用創建org.eclipse.m2e.ui.internal.launch.MavenBuilderConfigurationTabGroup.createTabs(ILaunchConfigurationDialog,字符串) - 但是不知道,我如何教Eclipse讓它在項目屬性的構建器首選項中可用... – 2011-01-26 14:33:03

回答

0

使用Maven的所有構建信息都存儲在pom.xml中,最詳細的配置是maven plugin configuration

Eclipse IDE內部的所有配置都應該使用m2e Eclipse plugin完成。那麼,我不知道在哪裏可以找到所有可能的配置。但有些時候,在編輯pom.xml時會出現一些Eclipse選項警告。

這是我當前設置的示例。它由m2e生成。

<pluginManagement> 
     <plugins> 
      <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. --> 
      <plugin> 
       <groupId>org.eclipse.m2e</groupId> 
       <artifactId>lifecycle-mapping</artifactId> 
       <version>1.0.0</version> 
       <configuration> 
        <lifecycleMappingMetadata> 
         <pluginExecutions> 
          <pluginExecution> 
           <pluginExecutionFilter> 
            <groupId>ro.isdc.wro4j</groupId> 
            <artifactId> 
             wro4j-maven-plugin 
            </artifactId> 
            <versionRange> 
             [1.4.0,) 
            </versionRange> 
            <goals> 
             <goal>jshint</goal> 
            </goals> 
           </pluginExecutionFilter> 
           <action> 
            <ignore></ignore> 
           </action> 
          </pluginExecution> 
          <pluginExecution> 
           <pluginExecutionFilter> 
            <groupId> 
             com.github.searls 
            </groupId> 
            <artifactId> 
             jasmine-maven-plugin 
            </artifactId> 
            <versionRange> 
             [1.2.0.0,) 
            </versionRange> 
            <goals> 
             <goal> 
              generateManualRunner 
             </goal> 
            </goals> 
           </pluginExecutionFilter> 
           <action> 
            <ignore></ignore> 
           </action> 
          </pluginExecution> 
         </pluginExecutions> 
        </lifecycleMappingMetadata> 
       </configuration> 
      </plugin> 

     </plugins> 
    </pluginManagement> 
相關問題