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>

在 shell 中运行 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 回答