4

Mavenビルドを2.2-beta5から2.2に移動しています。ドキュメントのとおり、assembly:assemblyは非推奨であり、assembly:singleに置き換えようとしています。さまざまな構成を試しましたが、まだ機能していません。通常、次のエラーが発生します。アセンブリの読み取りエラー:アセンブリ記述子が見つかりません。

   <plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2</version>
<executions>
 <execution>
  <id>make-assembly</id>
  <phase>assembly</phase>
  <goals>
   <goal>single</goal>
  </goals>
  <configuration>
   <finalName>${env}.${project.version}</finalName>
   <appendAssemblyId>false</appendAssemblyId>
   <filters>
    <filter>src/main/filters/${env}/${build.env}/filter-common.properties</filter>
    <filter>src/main/filters/${env}/${build.env}/filter-${user.name}.properties</filter>
   </filters>
   <descriptors>
    <descriptor>src/main/assembly/distribution.xml</descriptor>
   </descriptors>
  </configuration>
 </execution>
</executions>

実行:mvn clean package assembly:single install antrun:run

構成を実行タグから移動しようとしましたが、これにより同じ問題が発生します。コマンドからassembly:singleを削除すると、プラグインは実行されません。このプラグインを実行するための正しい方法を教えてください。

どうもありがとう

4

1 に答える 1

3

試行錯誤の末、これをパッケージフェーズに追加することで、問題なく機能することに気付きました。

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.2</version>
    <executions>
        <execution>
              <id>make-assembly</id>
              <phase>package</phase>
              <goals>
                  <goal>single</goal>
              </goals>
    <configuration>
    <finalName>${env}.${project.version}</finalName>
    <appendAssemblyId>false</appendAssemblyId>
    <filters>
            <filter>src/main/filters/${env}/${build.env}/filter-common.properties</filter>
            <filter>src/main/filters/${env}/${build.env}/filter-${user.name}.properties</filter>
    </filters>
    <descriptors>
            <descriptor>src/main/assembly/distribution.xml</descriptor>
    </descriptors>
                    </configuration>
            </execution>
    </executions>
                    </plugin>
于 2010-12-07T12:28:19.777 に答える