Как выполнить плагин maven только с пользовательской командой? - PullRequest
2 голосов
/ 21 января 2020

Я использую xsdtojava с cxf maven` плагином:

 <plugin>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-xjc-plugin</artifactId>

        <executions>
            <execution>
                <id>generate-sources</id>
                <phase>generate-sources</phase>
                <configuration>
                    ...
                </configuration>
                <goals>
                   <goal>xsdtojava</goal>
                </goals>
            </execution>
       </executions>
 </plugin>

Вопрос: Я хочу запретить запуск этого плагина на каждом mvn package. Вместо этого я хочу запустить генерацию источника только вручную. Но как? Я попытался установить пользовательскую фазу или цель, например <phase>generate-sources-now</phase> или <goal>generate-sources-now</goal>, но ничего не получилось.

Ответы [ 2 ]

1 голос
/ 21 января 2020

Несмотря на то, что я предпочел бы подход с использованием целевых задач, профильный подход работает так:

<profiles>
        <profile>
            <id>xsdtojava</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.cxf</groupId>
                        <artifactId>cxf-xjc-plugin</artifactId>

                        <executions>
                            <execution>
                                <phase>generate-sources</phase>
                                <goals>
                                    <goal>xsdtojava</goal>
                                </goals>
                            </execution>
                        </executions>

                        <configuration>
                             .....

Запуск с: mvn package -P xsdtojava

0 голосов
/ 21 января 2020

Плагины не должны иметь исполнения.

Просто настройте свой плагин как

<plugin>
   <groupId>org.apache.cxf</groupId>
   <artifactId>cxf-xjc-plugin</artifactId>
   <configuration>
   ...
   </configuration>
</plugin>

и назовите цель в обычной записи : (cxf-xjc-plugin:goal).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...