Eclipse'de, tüm Java kaynakları hatasız derlenirken Paket Gezgini "kırmızı-x" hata simgesine ne sebep olabilir?


97

Java geliştirme için Eclipse kullanıyorum. Tüm kaynaklarım iyi derlenir ve sonuçta ortaya çıkan uygulama iyi derlenir. Ancak, Paket Gezgini'nde "kırmızı-x" hata bildirimi almaya devam ediyorum.

Bu kaynak dizindeki tüm kaynaklarım (anlık görüntü için çok uzun) iyi derleniyor, hiçbiri "kırmızı-x" hata simgesini göstermiyor.

Sorunun nasıl çözüleceğine dair herhangi bir öneri çok takdir edilecektir.

Yanıtlar:


168

evet, bu bazen görünürde bir sebep olmadan olur. "Sorunlar" - Sekmesine (konsol çıktısının hemen yanında) gidebilir ve hata mesajını görebilirsiniz, böylece belki bu şekilde daraltabilirsiniz.


6
Java dışı başka bir bileşen doğrulamada başarısız olduğunda bunu özellikle anlıyorum (iyi bir örnek, bahar veya mavenler gibi bir XML dosyası olabilir).
Spencer Kormos

2
problem görünümünde herhangi bir problem görüyorsanız, bunun açık nedeni budur. Henüz görünürde bir nedeni olmayan herhangi bir hata görmedim :)
nanda

Jan-gressman'ın cevabına ekleniyor. Bazen "Sorunlar" sekmesine baktığınızda, sorunun bazı klasörlerde alt çizgi bulunan fazladan dosyalarda olduğunu göreceksiniz, örneğin __duplicatefile.java. Bunu düzeltmek için, projeye sağ tıklayın ve şunu seçin: Göster> Gezgin. Ardından, alt çizgi içeren yinelenen dosyaları silin ve projenizi oluşturun.
GraSim

3
Bununla da karşılaşıyorum - sık sık. Benim için, Eclipse & Maven ve komut satırını (mvn) birbirinin yerine kullanırken POM dosyamdaki manuel değişiklikler söz konusu. Düzeltmek için: Yukarıda belirtildiği gibi teşhis etmek için Sorunlar sekmesini kullanın ve senkronize olmayan POM ise, Eclipse'de Maven ile "Projeyi Güncelle" yapabilirsiniz: Paket Gezgini'nde projeye "Sağ tıklayın", "Maven'i seçin" "," Projeyi Güncelle "yi seçin. "Pom.xml'den proje yapılandırmasını güncelle", "Çalışma alanını yenile ..." ve "Projeleri temizle" seçeneğinin seçildiğinden emin olun.
Zack Jannsen

Sorunlara bakmak için iyi bir tavsiye. Projemin güncellenmesi gerekiyordu.
downeyt

17

Bu genellikle Maven'i kullandığımda oluyor ve bu soruyu bulana kadar her zaman görmezden geldim. Bu durumda projeyi güncellemeniz gerekir (Sorunlar bölmesine bakarak bunu anladım)

Proje bağlam menüsünden: Maven -> Projeyi Güncelle ve mevcut maven kod tabanlarını seçin

Alternatif olarak, aynı pencereyi açmak için (Alt + F5) kullanabilirsiniz.


1
Güncelleme projesine girdiğimde bile sorunu benim için çözmüyor. Sorunlar sekmesinde, tanımlanmamış / başlatılmamış / bir türe çözümlenemeyen 100 hata alıyorum ... Bu gerçek
hızlıdan

11

Projeyi temizlemeye ve yeniden inşa etmeye çalışın.


7

İnşa ettikten sonra. Projeyi yenileyin ve hala devam ederse, tutulmada Sorunlar sekmesine sağ tıklayın ve tümünü sil'i seçin.

Genellikle maven kurulumu yaparsanız ve tutulma özellikleri dosyaları düzgün şekilde güncellenmezse olur. Projenizde herhangi bir hata olmasa bile. İnşallah!


Sorunlar sekme alanına sağ tıklayın ve "Sil" i seçin - duymam gereken buydu!
Gabriel Staples

5

Cevap veren herkese teşekkür ederek başlamak istiyorum. Ancak benim durumumda temizlik ve yeniden inşa yeterli değildi çünkü sorun hala oradaydı ve düzeltilmesi gerekiyordu.

Paket dizinlerimden birinin yanlışlıkla kopyalandığı ve bu nedenle artık yanlış paket bildirimlerine sahip Java dosyalarını içeren "dagskra kopyası" adında fazladan bir dizin bulunduğu ortaya çıktı. Ayrıca, bu "yeni" dizindeki hatalar, içinde bulunduğu pakette "kırmızı-x" ile görünmez:

Paket Gezgini'nden, hatalı "dagskra kopyası" dizinini gösteren anlık görüntü: http://www.freeimagehosting.net/uploads/a824304b18.png

Beni doğru yöne çeviren "Sorunlar" sekmesini :-) okumanın ipucuydu, bu yüzden bu cevabı kabul edilen cevap olarak seçiyorum çünkü ihtiyacım olan şey buydu:

Sorunlar sekmesinden anlık görüntü http://www.freeimagehosting.net/uploads/dea26d5dd0.png

Bunun başkalarına yardımcı olacağını umarak ...


2

Bu nedenle, yapım yolunda eksik bir paket olabileceğini bulduktan sonra, bunu kaldırmak için ana projeye karşı kırmızı x:

1) Projenin "Yapı Yolunu Yapılandır" kısmına gidin 2) Java Derleme Yolu -> Kaynak Sekmesi - eksik paket / dosyaya karşı kırmızı x'i görmelisiniz. artık mevcut değilse, onu "kaldırmanız" yeterlidir.

red X begone! :)


1

Bazen .project'te yapı yolu hataları olabilir ve hataya neden olan dosyayı gerçekten görmek için Kaynak görünümüne geçmeniz gerekir.


1

Diğerlerinin söylediği gibi, genellikle suçlu derleme yolundaki kötü dosya referanslarıdır.

Genellikle taşınmış / silinmiş bir .jar dosyası. Eclipse, belirtilen konumda derleme yolunda başvurulan her şeyi bulmayı bekler ve bulamazsa şikayet eder.


1

Aynı sorunu yaşadım ve aşağıdaki adımlar sorunu çözdü:

  1. JRE'yi PROJECT> properties> java build path> libraries'den silin.

  2. Tutulmayı yeniden başlatın

  3. JRE'yi tekrar ekleyin

  4. Proje> Temizle'yi kullanarak projeyi yeniden oluşturun ve otomatik olarak oluşturma seçeneğini belirleyin.

Deneyin lütfen.


Bu soru neredeyse dört yaşında, zaten yanıtlanmış ve bu bir yanıtın kopyası. Lütfen yeni bilgileri yalnızca sorunun yazarına yardımcı olması muhtemelse gönderin.
Sam

Karışıklığım için özür dilerim, ancak gördüğüm kadarıyla, yeni yanıtı yinelenmemiş olarak göndermeye çalıştım.
Paz2

01/28/18 tarihinde aynı problemle buradayım. Sorunun kaç yaşında olduğuna bakılmaksızın cevaplar vermek hala iyidir.
Tadele Ayelegn

1

Yıkım bazen bunun suçlusu. Çevrenizle hiçbir ilgisi olmayabilir. Ancak, projenin mevcut ve yerel durumu arasında bir tutarsızlık olabilir. Benim durumumda, bir güncelleme yapmak ve ardından subversion sunucusuna yapılan bir işlem, projede X gibi herhangi bir bayrak olmadan beklenen temiz sonucu bana sağladı.


Tutulma için SVN eklentilerinin çok kararlı olmadığını görüyorum. Onlarla sorun yaşamaya devam ediyorum. Suçu onlara yükledim (hiçbir fikrim yok, sadece bir önsezi). Önerdiğiniz şey benim için çalıştı +1.
Pantelis Natsiavas

0

Yeniden inşa etmeyi deneyin. Bir yeniden oluşturma tamamlanana kadar kırmızı x'lerin her zaman kaybolmadığını buldum.


0

Pek çok kez benzer bir sorunla karşılaştım, genellikle benim için olan şey, bir java dosyasının metin düzenleyicide derlenmeyeceğini söylemesi, ancak paket gezgininde iyi derlendiğini söylemesi.

Bazen bir 'yeniden oluşturma' veya 'temiz derleme' yapmak işe yaramaz, dosyalar aslında oluşturulmaz (tutulmanın sahip olduğu dosyaların güncel olduğunu düşündüğünü varsaymak gerekir) ve bu olduğunda genellikle açılırım Java oluşturma yolu ve sadece bağımlılıklarımdan birini aşağı / yukarı hareket ettirin. Bu, tutulmayı her şeyi yeniden inşa etmeye zorluyor ve her zaman işe yarıyor gibi görünüyor.

Hala sorun yaşıyorsanız, projeyi kopyalamayı deneyin ve aynı davranışı alıp almadığınızı ve son bir hendek denemesinde tutulma için bir hata yayınlayıp yayınlamadığınızı kontrol edin, düzeltmeleri biraz zaman alabilir ama en azından öyle olduğunuzu biliyorsunuz. Duymak.


0

Önceki yanıta eklemek için, projenizi "temizlemenin" aşırı bir yolu onu silmektir (yani referansını çalışma alanından silmek, gerçek dosyaları silmek değil) ve sonra yeniden içe aktarmak.
Bazen yardımcı olur ...


0

FindBugs ayrıca statik kod analizi hatalarını belirtmek için dosyalara / paketlere karşı bir kırmızı x koyar.


0

Bunu aştım. Benim durumum daha karmaşıktı. Proje, maven komut satırından iyi paketlendi.

Yaptığım birkaç şey. 1. Bir sınıf tutulmayı karıştıran birçok içeriğe sahiptir. Bunları temizlemek sorunun çözülmüş kısmı 2. Bir vaka bir Setter hakkındaydı, F3'e basarak Setter'e giderken tutulma orada olmadığından şikayet etti. Bu yüzden basitçe yeniden yazdım ve iyi çalıştı (diğer tüm Setterler için bile)

Hala Örtük süper yapıcı ile mücadele ediyorum Item () varsayılan kurucu için tanımsız. Açık bir kurucu tanımlamalıdır "


0

Ayrıca zaman zaman paketlerin üzerindeki bu yanlış hata sembolleriyle karşılaşıyorum. Benim için işe yarayan onlardan kurtulmanın bir yolu, JRE Sistem Kitaplığını Java Derleme Yolundan etkili bir şekilde kaldırmak ve yeniden eklemektir.


soru soran kişi sorunun nedenini sordu, bir çözüm
sağladınız

0

Sonunda işe yarayan çözümüm, tüm projeleri temizlemek, tutulması kapatmak, tüm projeleri temizlemek, tutulmayı kapatmak vb. Oldu. Sonunda her şey düzeldi ve her şey beklendiği gibi oldu. Şimdiye kadarki en garip şey !!

Ve Sorun veya konsol görünümünde hiçbir hata yoktu.

Ayrıca bu, bir bilgisayar çökmesinden sonra oldu. En son gerçekleştiğinde tüm çalışma alanım tamamen kaybolmuştu. Hala bilgisayardaydı, ama erişmeye çalıştığımda hepsi boş olacaktı.

Her ne sebeple olursa olsun, bilgisayar çökmeleri tutulma tarafından gerçekten çok kötü bir şekilde ele alınır.


0

Ayrıca, üzerine tıklayarak projeyi güncelleyebilirsiniz.

Proje adına sağ tıklayın -> Maven'i seçin -> Sağ tıklayın -> Projeyi Güncelle.

Bu bana yardımcı oldu.

Teşekkürler.


0

Bu, birkaç nedenden dolayı ortaya çıkabilir. Jdk'yi değiştirdiyseniz, Proje fasetinin yanında kırmızı bir X işareti olurken, başka hiçbir klasör hata göstermez. Bu durumda, gösterilen jdk'yi değiştirin. Bu, JAX-WS sınıfımızda ( HSG


0

Benimkini çözdüm

  • Diğer tüm projeleri kapatın (yani ilgisiz proje seçeneği)

  • Temizleyin ve inşa edin

Benim projem androiddi ve bu yaptı.


0

Bu, Eclipse Mars'ta fabric.io indirdiğimde oldu ancak Bilgisayarı yeniden başlatmak bu sorunu benim için çözdü.


0

Benim durumumda bu sorunu çözen şey, Eclipse'i kapatıp tekrar açmaktı ... Ancak bunun neden olduğunu veya neden işe yaradığını hala bilmiyorum. Projemi temizlerken sorunlar yaşıyordum (belirli bir dosyayı silemediğini söyledi) ve bu sorunu çözdü :):


0

aynı problemim vardı. "Problemler" -Tab'i kontrol ettim ve proje için sunucu bulamadım. Sunucuyu tanımladım. kırmızı x kayboldu


0

Project-> Buildpath-> Library'ye gidebilirsiniz.

X işaretli herhangi bir kitaplık varsa, yani [çarpı işaretli] onu kaldırıp yeniden oluşturmayı deneyin. Benim için de çalıştı /


0

Bugün bu sorunla karşılaştım ve bu bağlantıyı buldum. Yukarıda Patrick Schaefer'in bahsettiği gibi takip ettim ve Update Maven projesi Dialog'u açtım. Çalışan projeme tıklayın ve "Anlık Görüntülerin / Sürümlerin Güncellemesini Zorla" ve "Tamam" onay kutusunu seçin. Tüm kızıl haç kayboldu. Umarım bu benzer bir durumda olan herkese yardımcı olur.


-2

Hatalı projeye sağ tıklayın, ardından alt menülerde seçin: Maven > UpdateProject >

ve sonra:

  • Tüm bağımlı projeler için onay kutusunu seçin
  • anlık görüntülerin zorunlu güncellemesini seçin
  • Tamam'ı tıklayın.

Bu benim için çalıştı ..

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.