我將對我的自定義maven插件執行多次寫入我的項目的pom.xml。我的配置是這樣的:指定所有插件執行的默認目標
...
<build>
<plugins>
<plugin>
<groupId>myGroupId</groupId>
<artifactId>pluginId</artifactId>
<executions>
<execution>
<id>ex-1</id>
<goals>
<goal>goal-name</goal>
</goals>
<configuration>
<option>value_1</option>
</configuration>
</execution>
<execution>
<id>ex-2</id>
<goals>
<goal>goal-name</goal>
</goals>
<configuration>
<option>value_2</option>
</configuration>
</execution>
<!-- quite plenty more executions here -->
</executions>
<configuration>
<commonOption>common_value</commonOption>
</configuration>
</plugin>
</plugins>
</build>
...
...所有的maven規範,就像在例子中,它的工作正常。
但是有很多冗餘 - 每個執行(其中大約20個)都有自己的目標部分,並且它們都具有完全相同的一個目標。想到自己 - 我會在插件部分指定一個默認值。看着maven POM XML架構和 - 萬歲,這是一個選項。我去了以下:
...
<build>
<plugins>
<plugin>
<groupId>myGroupId</groupId>
<artifactId>pluginId</artifactId>
<executions>
<execution>
<id>ex-1</id>
<configuration>
<option>value_1</option>
</configuration>
</execution>
<execution>
<id>ex-2</id>
<configuration>
<option>value_2</option>
</configuration>
</execution>
<!-- same plenty more executions changed likewise -->
</executions>
<goals>
<goal>goal-name</goal>
</goals>
<configuration>
<commonOption>common_value</commonOption>
</configuration>
</plugin>
</plugins>
</build>
...
...和巴姆!它不起作用。 Pom正在被解析,項目被構建,但插件沒有執行 - 甚至沒有執行過。爲什麼?我錯了,還是什麼?缺乏maven功能?錯誤?
你的插件綁定到哪個生命週期階段? – khmarbaise
它必然會初始化階段。我通過調用'mvn initialize'或'mvn install'來測試它。沒有用。 –
您是否嘗試過'mvn -X install'並深入瞭解日誌文件? – khmarbaise