Maven Javadoc eklentisini komut satırından nasıl devre dışı bırakabilirim?


231

Pom.xml'de böyle bir beyan var

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

bunu komut satırından kapatmanın bir yolu var mı?

Bunu bir profile çıkarabileceğimi biliyorum, ama istediğim bu değil.

Yanıtlar:


438

Javadoc üretimi özelliği maven.javadoc.skiptrue [ 1 ] olarak ayarlanarak atlanabilir , yani

-Dmaven.javadoc.skip=true

(ve yanlış değil)


1
Çocuk modülleriyle yaklaşma için @ Christoph-Tobias Schenke cevabına bakınız.
— ecoe

Bu argüman, bu sorunu önlemek için doğrudan jenkins'te de ayarlanabilir (Yapılandırma Sisteminde tanımlanan Global MAVEN_OPTS içinde)
— Kral Midas

11
Bu benim için işe yaramadı, ancak maven yayın eklentisini kullandığınızda bu parametreyi farklı bir şekilde geçirmeniz gerektiğini öğrendim. Bu çalıştı: mvn release:perform -Darguments="-Dmaven.javadoc.skip=true".
— PatS

181

Öyle görünüyor ki, basit yol

-Dmaven.javadoc.skip=true

yayın eklentisi ile çalışmaz. bu durumda parametreyi "bağımsız değişken" olarak geçirmeniz gerekir

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

9
İki argüman eklemeniz gerekiyorsa, bunları böyle bir alanla ayırabilirsiniz-Darguments="-DskipTests -Dmaven.javadoc.skip=true"
— Graham

4
Ayrıca, kök düzeyi pom.xml'deki yayın eklentisi yapılandırmasına eklemek için çalışır:<configuration><arguments>-DskipTests -Dmaven.javadoc.skip=true</arguments></configuration>
— nclark

1
Buna ek olarak, skipTests, testlerin derlenmesini de atlayan daha güçlü bir lezzetle gelir:-Dmaven.tests.skip=true
— nclark

120

maven.javadoc.skipÖzelliği, Mojo'nun javadocuna giderek eklentinin yürütülmesini atlamak için kullanabilirsiniz . Değeri Maven özelliği olarak belirtebilirsiniz:

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

veya komut satırı bağımsız değişkeni olarak:, -Dmaven.javadoc.skip=trueJavadocs neslini atlamak için.


1
Bu cevap soruya gerçekten cevap vermez, çünkü orada anahtarın komut satırı üzerinden yapılması gerektiğini belirtir.
— Sinisha Mihajlovski

3
Bu, herhangi bir javadoc üretmeyen ve aksi halde hataya neden olan birkaç modül içeren çok modüllü bir proje için mükemmel bir çözümdür.
— Emmanuel Bourg

19

Kök düzeyi pom.xml'deki sürüm eklentisi yapılandırmasına ekleyin:

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

bu, sorunun gerektirdiği gibi komut satırından düzgün değildir, ancak javadoc'u kalıcı olarak devre dışı bırakmanız gerekiyorsa harika çalışır.
— Lorenzo Sciuto

1

Yeni başlayanlar için Powershell kullanıcıları bunu bilmek önemlidir. Powershell'in sözdizimsel bir öğesidir, bu nedenle anahtarın çift tırnak içine alınması gerekir:

mvn temiz kurulum "-Dmaven.javadoc.skip = true"

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.