MavenJavadocプラグインを無効にする
1. 概要
Apache Maven Javadocプラグインを使用すると、Mavenビルド中に指定されたプロジェクトのJavadocを生成できます。 さらに、プラグインは標準のjavadocツールを使用してJavadocを自動的に生成するため、非常に便利です。
このクイックチュートリアルでは、MavenビルドでJavadoc生成を一時的に無効にする方法を見ていきます。
2. 問題の紹介
pom.xmlでMavenJavadocプラグインを構成して、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>
...
これは便利です。 ただし、リリースを行うときに、Javadocをjarファイルに添付したくない場合があります。 ただし、MavenJavadocプラグインも削除したくありません。
したがって、ビルドでJavadocの生成をスキップする方法が必要です。 次に、それを達成する方法を見てみましょう。
3. maven.javadoc.skipオプション
Maven Javadocプラグインには、Javadocの生成をスキップするためのmaven.javadoc.skipオプションが用意されています。
プロジェクトをビルドするときに値trueを指定してこのオプションを渡すと、MavenビルドはJavadocを生成しません。
mvn clean install -Dmaven.javadoc.skip=true
4. MavenリリースプラグインでJavadocの生成をスキップする
Mavenリリースプラグインは、自動リリース管理に広く使用されています。
プロジェクトでMavenリリースプラグインとJavadocプラグインの両方を構成したとしましょう。
ここで、Maven Javadocプラグインに、通常のビルド用のJavadocを生成するように依頼しますが、リリースビルドの場合のみJavadocの生成をスキップします。
この目標を達成するために使用できる2つのアプローチがあります。
最初の方法は、リリースビルドを開始するときに、mvnコマンドラインに引数を渡すことです。
mvn release:perform -Darguments="-Dmaven.javadoc.skip=true"
または、Mavenリリースプラグイン構成に maven.javadoc.skip =true引数を追加することもできます。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<arguments>-Dmaven.javadoc.skip=true</arguments>
</configuration>
</plugin>
このように、Mavenリリースプラグインを使用したすべてのビルドは、Javadocの生成をスキップします。
5. 結論
このクイック記事では、MavenJavadocプラグインがpom.xmlで構成されている場合にJavadocの生成をスキップする方法について説明しました。