Почему Maven использует неправильный плагин, несмотря на явную версию плагина и pluginManagement?
Мой родитель pom exlicitly объявляет зависимость от maven-javadoc-plugin 2.9.1 в обоих
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
</plugin>
...
И
<reporting>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
...
(см. версия плагина Maven в pom (по-видимому) игнорируется ) и mvn help:effective-pom
показывает, что используется 2.9.1. Однако сборка использует 2.10, что вызывает сбои сборки (см.
maven-javadoc-плагин нарушает mvn релиз: выполните и http://jira.codehaus.org/browse/MJAVADOC-407 )
mvn help:describe -DgroupId=org.apache.maven.plugins
-DartifactId=maven-javadoc-plugin
Показывает
Name: Apache Maven Javadoc Plugin
Description: The Apache Maven Javadoc Plugin is a plugin that uses the
javadoc tool for generating javadocs for the specified project.
Group Id: org.apache.maven.plugins
Artifact Id: maven-javadoc-plugin
Version: 2.10
Goal Prefix: javadoc
Между тем,
mvn dependency:resolve-plugins
Показывает
[INFO] Plugin Resolved: maven-javadoc-plugin-2.9.1.jar
Однако, когда я запускаю сборку, mvn использует вместо этого 2.10, вызывая сбой сборки.
Как я могу заставить maven использовать 2.9.1, а не сломанный 2.10?
(я использую Maven 3.2.1)
1 ответ:
Убедитесь, что вы смотрите на правильную зависимость. Мы видим, что 2.9.1, как указано, используется для отчетов сайта, но 2.10 используется сборкой. Я считаю, что вы должны указать это в вашем
<build><plugins>
Раздел также.
Мы только что убедились, что страдаем от той же самой проблемы. У нас была версия плагина в разделе Reporting plugins, но не build plugins. Как только мы добавили его в раздел build plugins, проблема была решена. То причина, по которой он должен был быть в плагинах сборки, заключалась в том, что он использовался на этапе подготовки развертывания для сборки jar-файла javadoc. Это происходит отдельно от создания javadoc для отчетов сайта.