Maven - Testleri çalıştırmadan nasıl derleyebilirim?


128

Maven'de testleri çalıştırmadan derlemenin bir yolu var mı? IDE'yi belirli testleri çalıştırmak için kullanmak istiyorum, hepsini değil.


8
Muhtemelen soruyu düzenlemelisiniz veya kabul edilen cevabı değiştirmelisiniz.
— Chiranjib

Yanıtlar:


29

parametre kullanmayı deneyebilirsiniz -DskipTests

Referanslar:


Netbeans'da yaptığım şey buydu. Şu mvn'yi görüyorum -Dmaven.test.skip = true -Dnetbeans.execution = true clean install sonra şunu görüyorum
— user373201

[compiler: testCompile] Test kaynakları derlenmiyor [surefire: test] Testler atlandı. En azından netbeans kullanarak testler
— atlanırsa

1
boşver, günlükler bunu söylese bile, hala test dosyalarını derliyor gibi görünüyor.
— user373201

34
bu, testlerin tamamen atlanmasına yol açar: yürütme ve derleme, aşağıdaki doğru yanıta bakın: test derleme. Eclipse
— Yashima

3
@Yashima haklısınız bu aswer o kadar akıllı değil ... lütfen aşağıdaki cevabı kabul edin, böylece bir bunu silebilirsiniz
— lweller

334

test-compileYaşam döngüsü aşaması nasıl olur ? Aşamadan önce meydana geldiği için herhangi bir test atlama gerektirmez test. yani,

$ mvn test-compile

Ve bitti.

Derleme Yaşam Döngüsüne giriş daha fazla bilgi verir.


7
Bu tam olarak ihtiyacım olan şeydi, teşekkürler. Asıl soruyu soran hakkında bilgim yok; ancak testleri derlemek ve ardından ayrı bir test çalıştırıcısı ile çalıştırmak istiyordum.
— Mike Miller

Buraya itiraf ettiğimden daha sık geldim ...
— Daniel Storch

31

Testleri ve kodu çalıştırmadan derlemek için şunları yapın:

mvn test-compile

7
Test derlemesinin derlemeyi içerdiğini düşünüyorum
— Whimusical

@Whimusical ile aynı fikirde. Üstelik bu, derleme hedefini 2 kez çalıştıracaktır.
— Gabriel Petrovay

26

Test aşamasını (paket gibi) içerecek bir hedefi yürütürken iki şey yapabilirsiniz:

  • Komutu kullanın mvn -DskipTests=true package. Bu, tüm testleri derler ancak çalıştırmaz.
  • Veya mvn -Dmaven.test.skip=true package. Bu, test dalını derlemez veya çalıştırmaz.

3

Alternatif olarak, maven.test.skip.execseçeneği kullanabilirsiniz .

mvn -Dmaven.test.skip.exec=true

Maven testleri çalıştırmadan derleyecektir. Bu seçeneği tüm projelerimde düzenli olarak kullanıyorum.



0

Settings.xml dosyanız varsa, şunu da kullanabilirsiniz:

<maven.test.skip>true</maven.test.skip>

5
Bunu asla yapmamalısın. İhtiyacınız olursa, komut satırında ayarlayın, ancak asla kalıcı olarak değil.
— Sean Patrick Floyd

13
Asla yapman veya yapmamalısın demedim. Sadece seçenek hakkında bilgi veriyorum.
— menapole

4
Bu da maven'in testleri derlememesine neden olur.
— Mike Miller

3
@Sean Patrick Floyd: Neden olmasın? bu kalıcı DEĞİLDİR, bu onu pom.xml'de ayarlamak olacaktır.
— Balázs Németh
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.