コマンドラインからMaven Javadocプラグインを無効にするにはどうすればよいですか?


231

pom.xmlには次のような宣言があります

    <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>

コマンドラインからそれをオフにする方法はありますか?

それをプロファイルに抽出できることは知っていますが、それは私が望んでいることではありません。

回答:


438

プロパティmaven.javadoc.skipをtrue [ 1 ]に設定することにより、Javadoc生成をスキップできます。つまり、

-Dmaven.javadoc.skip=true

(偽ではない)


1
子モジュールを使用するアプローチについては、@ Christoph-Tobias Schenkeの回答を参照してください。
ecoe、

この引数は、(グローバルMAVEN_OPTSに設定システムで定義されている)、この問題を回避するために、ジェンキンスさんに直接設定することができます
ミダス王

11
これは私にとってはうまくいきませんでしたが、Mavenリリースプラグインを使用する場合は、このパラメーターを別の方法で渡す必要があることを学びました。これはうまくいきました:mvn release:perform -Darguments="-Dmaven.javadoc.skip=true"
PatS 2018

181

簡単な方法のようです

-Dmaven.javadoc.skip=true

リリースプラグインでは動作しません。この場合、パラメータを「引数」として渡す必要があります

mvn release:perform -Darguments="-Dmaven.javadoc.skip=true"

9
2つの引数を追加する必要がある場合は、次のようにスペースで区切ることができます-Darguments="-DskipTests -Dmaven.javadoc.skip=true"
Graham

4
また、ルートレベルのpom.xmlでの設定プラグインのリリースにこれらを追加するために動作します:<configuration><arguments>-DskipTests -Dmaven.javadoc.skip=true</arguments></configuration>
nclark

1
また、skipTestsもテストのコンパイルをスキップすることを強く味に来る:-Dmaven.tests.skip=true
nclark

120

maven.javadoc.skipプロパティを使用して、Mojoのjavadocによるプラグインの実行をスキップできます。値をMavenプロパティとして指定できます。

<properties>
    <maven.javadoc.skip>true</maven.javadoc.skip>
</properties>

または、コマンドライン引数として:-Dmaven.javadoc.skip=trueJavadocの生成をスキップします。


1
この回答は実際には質問に答えるものではありません。切り替えはコマンドラインから行う必要があると記載されているためです。
Sinisha Mihajlovski

3
これは、いくつかのモジュールがjavadocを生成せず、それ以外の場合にエラーを引き起こすマルチモジュールプロジェクトの完璧なソリューションです。
Emmanuel Bourg 2017年

19

ルートレベルのpom.xmlのリリースプラグイン構成に追加します。

<configuration>
    <arguments>-Dmaven.javadoc.skip=true</arguments>
</configuration>

これは質問で要求されているようにコマンドラインからは適切に行われませんが、javadocを完全に無効にする必要がある場合はうまく機能します。
Lorenzo Sciuto

1

初心者のPowershellユーザーにとっては、 '。'を知ることが重要です。Powershellの構文要素であるため、スイッチを二重引用符で囲む必要があります。

mvn clean install "-Dmaven.javadoc.skip = true"

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.