簡體   English   中英

帶WTP的多模塊Maven2項目

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM