0

そのため、maven を知らず、知る必要のない展開担当者がいます。彼らが必要とするのは、戦争の新たな構築だけです。私たちのシステムでは、プラグインを使用した自動展開などを使用できるとは思えないため、Tomcat プラグインは廃止されました。また、SCM がサポートされていないため、他のプロジェクトに依存するプロジェクトを単純に持つことはできません...プロジェクトがローカルのサブディレクトリにあるときにこれを実行できない限り。その上、組織のリポジトリへの書き込みアクセス権もありません。おそらくそれは、Maven の方法でリリースを行うことができないことを意味します。

私が知りたいのは、プロジェクトのベースに結果のアーカイブを持つコンポーネント (モジュール?) ビルド構造があるかどうかです。これにより、紛らわしいコンポーネント、アセンブリ、プロファイルの中でそれを探す必要がなくなります。など

4

2 に答える 2

1

おそらくを使用できますmaven-dependency-plugin。ビルド後、結果のwarファイルが選択したフォルダーにコピーされます。

たとえば、次のファイル構造があると仮定します(簡単に適応できます)。

- parent folder
   |- child one (jar)
   |- child two (war)

子2のwarファイルを親フォルダー/ターゲットディレクトリにコピーするには、子2モジュールのpomに次の宣言を含めることができます。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-dependency-plugin</artifactId>
    <version>2.5</version>
    <executions>
      <execution>
        <id>copy</id>
        <phase>install</phase>
        <goals>
          <goal>copy</goal>
        </goals>
        <configuration>
          <artifactItems>
            <artifactItem>
              <groupId>${groupId}</groupId>
              <artifactId>${artifactId}</artifactId>
              <version>${version}</version>
              <overWrite>true</overWrite>
              <outputDirectory>${basedir}/../target</outputDirectory>
              <destFileName>${artifactId}.jar</destFileName>
            </artifactItem>
          </artifactItems>
        </configuration>
      </execution>
   </executions>
</plugin>

プラグインは、完全に異なる宛先フォルダー(階層の一部ではない)を指定することもできるため、非常に便利です。

于 2012-08-23T21:39:07.800 に答える
0

これを POM に反映するのではなく、ビルド ツール (Jenkins など) でビルド後のアクションとしてコピーを行います。

于 2014-02-27T11:48:48.653 に答える