[英]Multi Module Maven2 Project with WTP
我很難讓我的Maven2多模塊項目具有深度項目結構,在我的JBOSS 5服務器中顯示為單個耳朵(具有依賴性 - 包括1個war,2個ejbs和1個jar)在我的Eclipse Ganymede中(選項卡服務器)。
我一直在嘗試使用Maven Eclipse插件將我的項目變成WTP項目但沒有成功。 因此,它們似乎部署在服務器中,它們顯示為獨立的項目。
我的項目有1個戰爭,2個ejbs和1個jar必須打包在耳內,每個“子項目”都是一個單獨的模塊。
Project的pom.xml(類型為pom):
...
<modules>
<module>ejb1</module>
<module>ejb2</module>
<module>war</module>
<module>jar</module>
<module>ear</module>
</modules>
...
耳模塊僅負責將其他模塊封裝在一起。
有沒有辦法告訴eclipse(ganymede)所有這些項目(ejbs,war和jar)都在ear模塊中,所以我可以在服務器中部署耳朵?
使用可選的WTP配置安裝m2eclipse對我有用。 我還將以下內容添加到我的父pom中,以確保eclipse文件中的正確性質和構建器
這會生成為m2eclipse准備好的eclipse .project文件。 然后我可以使用m2eclipse更新項目文件,允許熱部署webapp及其依賴項
<build>
...
<plugin>
<artifactId>maven-eclipse-plugin</artifactId>
<version>2.5.1</version>
<!--
Eclipse project natures: http: //vikashazrati.wordpress.com/2007/12/22/adding-project-nature-to-your-maven-pomxml/
Maven-eclipse-plugin: http: //maven.apache.org/plugins/maven-eclipse-plugin/
-->
<configuration>
<additionalProjectnatures>
<projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
<projectnature>org.eclipse.jem.workbench.JavaEMFNature</projectnature>
<projectnature>org.eclipse.wst.common.modulecore.ModuleCoreNature</projectnature>
<projectnature>org.eclipse.wst.common.project.facet.core.nature</projectnature>
<projectnature>org.eclipse.jdt.core.javanature</projectnature>
<projectnature>org.eclipse.wst.jsdt.core.jsNature</projectnature>
<projectnature>org.maven.ide.eclipse.maven2Nature</projectnature>
</additionalProjectnatures>
<buildcommands>
<buildcommand>org.eclipse.wst.jsdt.core.javascriptValidator</buildcommand>
<buildcommand>org.eclipse.jdt.core.javabuilder</buildcommand>
<buildcommand>org.eclipse.wst.common.project.facet.core.builder</buildcommand>
<buildcommand>org.eclipse.wst.validation.validationbuilder</buildcommand>
<buildcommand>org.springframework.ide.eclipse.core.springbuilder</buildcommand>
<buildcommand>org.maven.ide.eclipse.maven2Builder</buildcommand>
</buildcommands>
</configuration>
</plugin>
你想要做的是讓maven通過mvn eclipse創建eclipse項目:eclipse 這可能會有所幫助。
嘗試m2eclipse(google it)並安裝WTP集成工具,使用maven向導創建項目,在pom xml編輯器中將類型更改為pom,從pom創建子模塊並將其添加為子項,如果它是web項目它獲得WTP行為,即它可以部署到j2ee容器(jboss / tomcat),為web模塊中的ejb模塊添加dep模塊,將web應用程序部署到容器
在超級pom項目中使用-Dwtpversion = maven的2.0參數或命令行mvn -Dwtpversion = 2.0。 我使用m2eclipse插件,但多模塊項目有一些問題。 我使用m2eclipse插件進行依賴管理。 如果我想用超級pom清理,安裝等所有項目,我在命令行上執行。 項目屬性也必須在eclipse中檢查。 Project Facets,Java EE Module依賴項必須檢查。 您也可以導出到ear項目,但要小心檢查maven模塊是否在更改后編譯。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.