1. Обзор
Плагин Apache Maven Javadoc позволяет нам генерировать Javadocs для указанного проекта во время сборки Maven. Кроме того, плагин довольно удобен, поскольку автоматически генерирует документы Javadoc с помощью стандартного инструмента javadoc
.
В этом кратком руководстве мы рассмотрим, как временно отключить генерацию Javadoc в сборках Maven.
2. Введение в проблему
Мы можем настроить подключаемый модуль Maven Javadoc в нашем файле pom.xml
для создания документов Javadoc и прикрепления их к созданным файлам jar
, например:
...
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
...
Это удобно. Однако иногда, когда мы делаем выпуск, мы не хотим прикреплять Javadocs к файлу jar
. Но мы также не хотим удалять плагин Maven Javadoc.
Поэтому нам нужен способ пропустить генерацию Javadoc в сборке. Далее посмотрим, как этого добиться.
3. Вариант maven.javadoc.skip
Плагин Maven Javadoc предоставляет параметр maven.javadoc.skip
для пропуска генерации Javadoc.
Наша сборка Maven не будет генерировать Javadocs, если мы передаем эту опцию со значением true
при сборке нашего проекта:
mvn clean install -Dmaven.javadoc.skip=true
4. Пропустите генерацию Javadoc с помощью плагина Maven Release
Плагин выпуска Maven широко используется для автоматического управления выпусками.
Допустим, мы настроили в нашем проекте как подключаемый модуль Maven Release, так и подключаемый модуль Javadoc.
Теперь мы хотели бы попросить подключаемый модуль Maven Javadoc генерировать Javadocs для обычных сборок, но пропустить генерацию Javadoc только для выпускных сборок.
Есть два подхода, которые мы можем использовать для достижения этой цели.
Первый способ — передать аргумент в командную строку mvn
, когда мы запускаем сборку релиза:
mvn release:perform -Darguments="-Dmaven.javadoc.skip=true"
Кроме того, мы можем добавить аргумент maven.javadoc.skip=true
в нашу конфигурацию плагина Maven Release:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<arguments>-Dmaven.javadoc.skip=true</arguments>
</configuration>
</plugin>
Таким образом, все сборки с подключаемым модулем Maven Release будут пропускать генерацию Javadoc.
5. Вывод
В этой быстрой статье мы рассмотрели, как пропустить создание Javadoc, когда плагин Maven Javadoc настроен в нашем pom.xml
.