Maven を使用して Web サービス プロジェクトを構築しています。
私のpom.xmlには次のものがあります:
<packaging>war</packaging>
これにより、.war が nexus に展開されます。
しかし、 builder-helper-maven-plugin を使用して、このプロジェクトのクラスのサブセットから jar を抽出したい:
target に ws-webservice.jar を作成する jar の作成:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<includes>
<include>org/xxx/ws/yyy/config/**/*</include>
<include>org/xxx/ws/yyy/domain/**/*</include>
<include>org/xxx/ws/yyy/jpa/**/*</include>
</includes>
</configuration>
</plugin>
build-helper-maven-plugin の実行:
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>attach-artfact</id>
<phase>package</phase>
<goals>
<goal>attach-artifact</goal>
</goals>
<configuration>
<artifacts>
<artifact>
<file>target/ws-webservice.jar</file>
<type>jar</type>
</artifact>
</artifacts>
</configuration>
</execution>
この構成では、.jar のみが nexus にデプロイされ、war はデプロイされなくなります。
何か考えはありますか?`
編集
を使用して、jar と war を nexus に展開することができました
<artifact>
<classifier>dao-jpa</classifier>
<file>target/ws-webservice.jar</file>
<type>jar</type>
</artifact>
これにより、ws-webservice-1.0.0-SNAPSHOT.war および ws-webservice-1.0.0-SNAPSHOT.dao-jpa.jar が生成されます。もちろん、この場合、分類子は必須です。
おそらく良い方法は、dao レイヤーと Web サービスを 2 つの異なる子プロジェクトで囲む Maven 親プロジェクトを使用することです。