Когда плагин Maven использует POM в текущем каталоге? - PullRequest
0 голосов
/ 12 июня 2018

Я использую плагин Versions Maven для проверки обновлений моих зависимостей.Поэтому я добавил следующие строки в свой pom.xml:

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>versions-maven-plugin</artifactId>
    <version>${versions-plugin.version}</version>
    <configuration>
        <rulesUri>classpath:///rules.xml</rulesUri>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>versionrules</groupId>
            <artifactId>versionrules</artifactId>
            <version>1-SNAPSHOT</version>
        </dependency>
    </dependencies>
</plugin>

Но эта конфигурация не используется, если я запускаю плагин Versions Maven из командной строки в том же каталоге, что и pom.xml.Единственный способ использовать мою собственную конфигурацию - поместить эту конфигурацию плагина в профиль и выполнить этот профиль во время запуска Maven.

Есть ли способ запустить плагин Versions в командной строке и настроить его черезpom.xml?Я уверен, что мои вопросы относятся не только к плагину Версии, но и к любому плагину Maven.

1 Ответ

0 голосов
/ 13 июня 2018

Это можно сделать с помощью идентификатора выполнения default-cli в вашем определении выполнения, конфигурация будет использоваться во время выполнения в командной строке (используя текущую конфигурацию), кроме того, поскольку Maven 3.3.1 вы можетеиспользуйте такие вещи, как:

mvn version:set@second-cli

, что означает, что вы можете сделать другую конфигурацию для командной строки в файле pom:

Просто разделив их по другому идентификатору

 <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>versions-maven-plugin</artifactId>
        <version>2.5.</version>
        <executions>
          <execution>
            <id>default-cli</id>
            <configuration>
              ...
            </configuration>
          </execution>
          <execution>
            <id>second-cli</id>
            <configuration>
               ....
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins> 
  </build>

Таким образом, это означает, что вы можете иметь различные конфигурации для запуска в командной строке, указав идентификатор.

...