Плагин Maven EAR: сгенерированный файл EAR не содержит модулей WAR, EJB или RAR

#maven #war #ear

#maven #Война #ear

Вопрос:

Я использовал плагин EAR для упаковки модуля WAR, EJB amp; RAR, однако, хотя все они успешно упаковываются при запуске mvn clean package , я замечаю, что в целевом каталоге выводится следующее.

  • application.xml (сгенерированный application.xml )
  • my-application-ear-1.0-SNAPSHOT (каталог с правильно упакованными зависимостями WAR, EJB и RAR, META-INF с сгенерированными application.xml и дополнительные ресурсы из проекта EAR)
  • my-application-ear-1.0-SNAPSHOT.ear (файл 9kb .ear, содержащий только META-INF с сгенерированным application.xml и дополнительные ресурсы из проекта EAR)

Ни один из модулей не упакован в конечный файл EAR.

Вот <build> узел POM проекта EAR.

 <build>

<plugins>
  <plugin>
    <artifactId>maven-ear-plugin</artifactId>
    <version>3.0.2</version>
    <configuration>
      <finalName>my-application-ear</finalName>
      <version>7</version>
      <earSourceDirectory>src/main/application</earSourceDirectory>
      <packagingIncludes>**/*</packagingIncludes>
      <defaultLibBundleDir>lib</defaultLibBundleDir>
      <filtering>false</filtering>
      <packagingIncludes>Default_HTTP_WC/**,Default_IIOP_WC/**,Default_JMS_WC/**,META-INF/**,</packagingIncludes>
      <modules>
        <ejbModule>
          <groupId>com.abc.def</groupId>
          <artifactId>ejb-module</artifactId>
          <bundleDir>/</bundleDir>
          <bundleFileName>ejbModule.jar</bundleFileName>
          <moduleId>EjbModule_1</moduleId>
        </ejbModule>

        <rarModule>
          <groupId>com.abc.def</groupId>
          <artifactId>rar-module</artifactId>
          <bundleDir>/</bundleDir>
          <bundleFileName>RARModule</bundleFileName>
          <uri>/RARModule.rar</uri>
          <unpack>true</unpack>
          <moduleId>RARModule_1</moduleId>
        </rarModule>


          <webModule>
              <groupId>com.abc.def</groupId>
              <artifactId>my-web-app</artifactId>
              <uri>/WebApplication.war</uri>
            <bundleDir>/</bundleDir>
              <bundleFileName>WebApplication.war</bundleFileName>
              <contextRoot>/foo</contextRoot>
              <moduleId>WebModule_1</moduleId>
          </webModule>


      </modules>
    </configuration>
    <goals>
      <goal>ear</goal>
    </goals>
  </plugin>

</plugins>
  

Я что-то упускаю? Приветствуется любая помощь.

Ответ №1:

Я разобрался со своей проблемой, я полностью упустил из виду использование <packagingIncludes> из более ранней итерации. удалил его и все в порядке.