Запуск нескольких профилей Maven из командной строки

Иметь два профиля для создания зависимого jar-файла для веб-приложения (один для tomcat, а другой - для веб-сферы). Здесь я пытаюсь запустить эти два профиля за один раз, чтобы собрать эти банки вместе.

mvn help:active-profiles -o -Dmaven.test.skip=true clean install -PTOMCAT,WEBSPHERE

В результате этих выполнений мы ожидаем acme-tomcat-0.0.1-SNAPSHOT.jar и acme-web-0.0.1-SNAPSHOT.jar, но наряду с ними также создается jar по умолчанию acme-0.0.1-SNAPSHOT.jar. Кажется, это из-за выполнения по умолчанию.

Как мы можем избежать выполнения по умолчанию, чтобы избежать генерации acme-0.0.1-SNAPSHOT.jar по умолчанию. Мы привели пару решений здесь, в SO, чтобы прийти к этому, а также мы сделали аналогичный пост ранее, но это не поможет нам в этом сценарии. Любые указатели будут полезны.

Конфигурация профиля выглядит так

<profiles>
    <profile>
        <id>TOMCAT</id>
        <activation>
            <activeByDefault>false</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <artifactId>maven-jar-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>tom-jar</id>
                            <phase>package</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                            <configuration>
                                <finalName>${project.artifactId}-tomcat-${project.version}</finalName>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build> 
        <dependencies>
            <dependency>
                <groupId>org.apache.activemq</groupId>
                <artifactId>activemq-core</artifactId>
                <version>5.7.0</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.geronimo.specs</groupId>
                <artifactId>geronimo-j2ee-management_1.1_spec</artifactId>
                <version>1.0.1</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.javaee</groupId>
                <artifactId>jboss-jms-api</artifactId>
                <version>1.1.0.GA</version>
            </dependency>
        </dependencies>
    </profile>
    <profile>
        <id>WEBSPHERE</id>
        <activation>
            <activeByDefault>false</activeByDefault>
        </activation>
        <build>
            <plugins>
                <plugin>
                    <artifactId>maven-jar-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>web-jar</id>
                            <phase>package</phase>
                            <goals>
                                <goal>jar</goal>
                            </goals>
                            <configuration>
                                <finalName>${project.artifactId}-web-${project.version}</finalName>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build> 
        <dependencies>
            <dependency>
                <groupId>org.apache.activemq</groupId>
                <artifactId>activemq-core</artifactId>
                <version>5.4.3</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.activemq</groupId>
                <artifactId>geronimo-j2ee-management_1.0_spec</artifactId>
                <version>1.0</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.jboss.javaee</groupId>
                <artifactId>jboss-jms-api</artifactId>
                <version>1.1.0.GA</version>
                <scope>provided</scope>
            </dependency>
        </dependencies>
    </profile>
</profiles>

Спасибо Сан

1 ответ

Решение

Используя указатель от Volodymyr Kozubal, изменил идентификатор выполнения моего профиля TOMCAT на:

<execution>
   <id>default-jar</id>
   .........
 </execution>

переопределить выполнение по умолчанию.

Спасибо вам всем

Другие вопросы по тегам