Sınıf JavaLaunchHelper iki yerde uygulanır


291

Bugün Intellij Idea'mı macOS Sierra'da yükselttim ve şimdi, konsolda uygulamaları çalıştırdığımda şu hatayla karşılaşıyorum:

objc 3636 İçindekiler / Ana Sayfa / jre / lib / libinstrument.dylib (0x10ea194e0). İkisinden biri kullanılacak. Hangisi tanımsız.

Yanıtlar:


476

Tüm detayları burada bulabilirsiniz:

  • IDEA-170117 "objc: Sınıf JavaLaunchHelper her ikisinde de uygulandı ..." uyarısı Run konsollarında

Bu var Java eski böcek Mac üzerinde Java Agent tarafından tetiklenen var app başlatırken IDE tarafından kullanılıyor. Bu mesaj zararsızdır ve görmezden gelinmesi güvenlidir. Oracle geliştiricisinin yorumu:

İleti iyi huyludur, bu sınıfın her iki kopyası da aynı olduğundan (tam olarak aynı kaynaktan derlenmiştir) bu sorundan olumsuz bir etkisi yoktur. Bu tamamen kozmetik bir konudur.

Sorun giderilene içinde Java 9 ve Java 8 güncellemesi 152 .

Sizi rahatsız ederse veya uygulamalarınızı herhangi bir şekilde etkiliyorsa (olmamalıdır), IntelliJ IDEA'nın çözümü , ( | ) içine idea_rtekleyerek başlatıcıyı devre dışı bırakmaktır . Geçici çözüm, IDE'nin bir sonraki yeniden başlatılmasında etkili olacaktır. idea.no.launcher=trueidea.propertiesHelpEdit Custom Properties...

Yine de IntelliJ IDEA başlatıcısının devre dışı bırakılmasını önermiyorum. Zarif kapatma (Çıkış düğmesi), iş parçacığı dökümleri, işletim sistemi sınırlarını aşan çok uzun komut satırıyla ilgili bir sorun gibi geçici özellikler için kullanılır. sana bağlı.


6
İdea_rt ne yapıyor? Devre dışı bırakmamak için herhangi bir neden var mı?
TTT

8
Zarif çıkış, iş parçacığı dökümleri sağlar, işletim sistemi sınırlarını aşabilen uzun sınıfyolunu işler, vb. Özellikle zararsız bir iletiyi gizleme nedeniyle devre dışı bırakmazdım.
CrazyCoder

16
Java 8 güncellemesi 152'yi yükledim ve yanıtı olduğu gibi sorunu çözdü. Teşekkür ederim.
David Victor

3
152 ne zaman kehanet java se ile itilecek?
Yogesh

1
Java 8 güncellemesi 191 çalıştıran IntelliJ CE 2018.2 yüklendi: ileti hala orada.
Massimiliano Kraus

180

“Bu mesaj zararsız” ( @ CrazyCoder'ın cevabına bakın ) olduğundan, basit ve güvenli bir geçici çözüm, bu uğultulu mesajı IntelliJ IDEA ayarları ile konsolda katlayabilmenizdir:

  1. 【Tercihler】 - 【Editör】 - 【Genel】 - 【Konsol】 - 【İçerdiği konsol satırlarını】
    Tabii ki, Action Eylem Bul ...】 ( cmd+shift+Amac'ta) ve Fold console lines that containdaha etkili gezinmek için yazabilirsiniz .
  2. Ekle Class JavaLaunchHelper is implemented in both

görüntü

Bilgisayarımda şu ortaya çıkıyor: (LGTM: b)

görüntü

Ve mesajı tekrar kontrol etmek için açabilirsiniz:

görüntü

Not:

Ekim 2017 itibarıyla, bu sorun
daha fazla bilgi için jdk1.9 / jdk1.8.152 / jdk1.7.161'de çözülmüştür , @ muttonUp'ın cevabına bakınız )


13

Intellij Idea 2017 kullanıyorum ve aynı problemle karşılaştım. Benim için problemi çözen şey basitçe

  1. intelliJ projesini kapat
  2. Dosya -> Yeni -> mevcut kaynaklardan proje
  3. Harici modelden içe aktar özelliğini (varsa) kullanın
  4. projeyi tekrar açın.

5
klasik close then opençözüm =))
Khoa

Burada verilen her çözümü denedim, ama sadece bu çözüm benim için çalıştı. .ideaYeniden içe aktarmadan önce klasörü silmenizi öneririm .
Rishabh

Java 8 güncelleştirmesi 151 çalıştıran macOS Sierra'da IDEA 2017.3.1'de bu işe yaramadı. Ancak, IDEA yeniden başlatıldığında ve projemi 152 güncellemesini kullanacak şekilde ayarladıktan sonra 152'ye yükseltme düzeltildi.
akubot

1

Intellij IDEA 2017'yi yüklediğimde, Tercihler -> Oluşturma, Yürütme, Dağıtım -> Hata Ayıklayıcı menüsüne gidin ve "JDK 1.3.x ve öncesi için Klasik VM'yi Zorla" menüsüne gidin, bu bana oldu. Bu benim için çalışıyor.


2
Ayrıca, idea_rt başlatıcısı ajanını CrazyCoder'den bahsedildiği gibi devre dışı bırakmanız gerekebilir. idea.no.launcher = true, idea.properties içine eklenir (Yardım | Özel Özellikleri Düzenle ...). Bundan sonra IDE'yi yeniden başlattığınızdan emin olun.
Danny Guo

Evet, özel özellik geçici çözümü çalışıyor, öneriniz sistemimde hiçbir şey yapmıyor. Cevabınızı denediniz mi, yani ayarı değiştirin - Bir JDK 1.3.x seçeneğinin nasıl bir etkisi olabileceğini görmüyorum? Java 8'deyim.
David Victor

Benim için, özel mülkiyeti başlangıçta denedim, bu benim için çalışmıyor. sonra bu devre dışı bırakma JDK1.3.x çözüm buldum. IDE'yi yeniden başlattıktan sonra her şey iyi çalışıyor.
Danny Guo

1
@DannyGuo, herhangi bir Java aracısından kaynaklanıyor ve hata ayıklama modunda Java aracısı modern JVM'ler için zaten kullanılıyor, bu sizin için sorunu yalnızca Hata Ayıklama modunda düzeltti, ancak başlatıcı aracısı olduğunda Çalıştırma modunda sorun yaşarsınız. sağladı.
CrazyCoder

0

Diğer geçici çözümü buldum: libinstrument.dylibproje yolundan hariç tutmak için. Bunu yapmak için Tercihler -> Derleme, Yürütme ve Dağıtım -> Derleyici -> Hariç Tutulanlar -> + öğelerine gidin ve burada hata mesajındaki yola göre dosya ekleyin.


0

Bu, yıllar önce benim için bir konuydu ve daha önce projelerimden 1.7'yi hariç tutarak Eclipse'de düzeltmiştim, ancak yakın zamanda kurduğum IntelliJ için tekrar bir sorun haline geldi. Ben sabit:

  1. JDK'nın kaldırılması:

    cd /Library/Java/JavaVirtualMachines
    sudo rm -rf jdk1.8.0_45.jdk

    ( jdk1.8.0_45.jdkYükledim; açıkçası o klasörde hangi java sürümü listelenirse kaldırmalısınız. Sorun yaratan dosyalar bu klasörde bulunur ve silinmelidir.)

  2. JDK 9'u indirme ve yükleme .

Bir sonraki yeni proje oluşturduğunuzda veya varolan bir projeyi açtığınızda, proje SDK'sını yeni JDK yüklemesini gösterecek şekilde ayarlamanız gerektiğini unutmayın. Ayrıca JavaVirtualMachines klasörünüzde JDK 1.7 yüklüyse bu hatayı görebilir veya geri sürünmesini sağlayabilirsiniz (bu benim başıma inandığım şeydir).


0

Aynı hata, benim yükseltmek Junitve çözmek

org.junit.jupiter:junit-jupiter-api:5.0.0-M6

için

org.junit.jupiter:junit-jupiter-api:5.0.0
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.