2

プロファイルは: ${artifactId} をプロファイル ID として使用します。

 <profiles>
    <profile>
        <id>${artifactId}</id>
        <build>
            <plugins>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.3</version>
                    <configuration>
                        <descriptors>
                            <descriptor>distribution.xml</descriptor>
                        </descriptors>
                    </configuration>
                    <executions>
                        <execution>
                            <id>make-assembly</id>
                            <phase>package</phase>
                            <goals>
                                <goal>single</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </profile>

シェルでmavenを実行: mvn -U -Dmaven.test.skip=true -f pom.xml -Pabc_test clean install

次に、エラーをキャッチします。

[警告] 要求されたプロファイル「abc_test」は存在しないため、アクティブ化できませんでした。終了

4

1 に答える 1

7

すべてのプロファイルを pom.xml で定義する必要があります。

    <profiles>
        <profile>
            <id>dev</id>
                    <activation>
                        <activeByDefault>true</activeByDefault>
                    </activation>
                    <properties>
                        <war.name>dev</war.name>
                    </properties>
        </profile>
        <profile>
                    <id>prod</id>
                    <properties>
                        <war.name>prod</war.name>
                    </properties>
        </profile>
    </profiles>

ここで、プロファイル名はdevprodです。${war.name}プロファイルによって変更された変数として使用できます。

于 2012-09-12T11:12:07.227 に答える