it-swarm-id.com

Bisakah Maven dibuat kurang verbose?

Maven memuntahkan terlalu banyak garis output sesuai selera saya (saya suka cara Unix: tidak ada berita adalah kabar baik).

Saya ingin menyingkirkan semua baris [INFO], tetapi saya tidak dapat menemukan penyebutan argumen atau pengaturan konfigurasi yang mengontrol verbositas Maven.

Apakah tidak ada cara seperti LOG4J untuk mengatur level log?

82
Asaf Bartov

Anda dapat mencoba sakelar -q .

-q, - quiet Quiet output - hanya menampilkan kesalahan

103
Jorge Ferreira

-q seperti yang disebutkan di atas adalah apa yang Anda butuhkan. Sebuah alternatif bisa jadi 

-B , --batch-mode Jalankan dalam mode non-interaktif (batch). lingkungan integrasi berkelanjutan. Saat berjalan dalam mode non-interaktif, Maven tidak akan pernah berhenti untuk menerima input dari pengguna. Sebagai gantinya, ia akan menggunakan nilai default yang masuk akal ketika membutuhkan input .

Dan juga akan mengurangi pesan output kurang lebih ke esensi.

20
Stanislav

Gunakan opsi baris perintah -q atau --quiet

6
Sietse

Tautan resmi: https://maven.Apache.org/maven-logging.html

Anda dapat menambahkan parameter JVM:

-Dorg.slf4j.simpleLogger.defaultLogLevel=WARN

Waspadalah terhadap UPPERCASE.

5
jgrtalk

Jawaban yang ada membantu Anda memfilter berdasarkan tingkat log menggunakan --quiet. Saya menemukan bahwa banyak pesan INFO berguna untuk debugging, namun mengunduh pesan log artefak seperti berikut ini berisik dan tidak membantu.

Downloading: http://nexus:8081/nexus/content/groups/public/org/Apache/maven/plugins/maven-compiler-plugin/maven-metadata.xml

Saya menemukan solusi ini:

https://blogs.itemis.com/en/in-a-nutshell-removing-artifact-messages-from-maven-log-output

mvn clean install -B -Dorg.slf4j.simpleLogger.log.org.Apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
0
errant.info

Maven 3.1.x menggunakan SLF4j untuk logging, Anda dapat menemukan instruksi cara mengkonfigurasinya di https://maven.Apache.org/maven-logging.html

Singkatnya: Ubah ${MAVEN_HOME}/conf/logging/simplelogger.properties, atau setel properti yang sama melalui variabel lingkungan MAVEN_OPTS.

Sebagai contoh: pengaturan MAVEN_OPTS ke -Dorg.slf4j.simpleLogger.log.org.Apache.maven.cl‌​i.transfer.Slf4jMave‌​nTransferListener=wa‌​rn mengkonfigurasi pencatatan pendengar transfer mode batch, dan -Dorg.slf4j.simpleLogger.defaultLogLevel=warn menetapkan tingkat log default.

0
ankon

Jika Anda hanya ingin menyingkirkan pesan [INFO] Anda juga bisa melakukannya:

mvn ... | fgrep -v "[INFO]"

Untuk menekan semua keluaran (kecuali kesalahan), Anda dapat mengalihkan stdout ke /dev/null dengan:

mvn ... 1>/dev/null

(Ini hanya berfungsi jika Anda menggunakan bash (atau cangkang serupa) untuk menjalankan perintah Maven.)

0
m13r

Masalah saya adalah -q terlalu tenang. Saya menjalankan pakar di bawah CI

Dengan Maven 3.6.1 (April 2019) , Anda sekarang memiliki opsi untuk menekan kemajuan transfer saat mengunduh/mengunggah dalam mode interaktif .

mvn --no-transfer-progress ....

atau singkatnya:

mvn -ntp ... ....

Itulah yang Ray diusulkan dalam komentar dengan MNG-6605 dan PR 239 .

0
VonC