Trong Eclipse, điều gì có thể gây ra biểu tượng lỗi "red-x" của Package Explorer khi tất cả các nguồn Java biên dịch mà không có lỗi?


94

Tôi đang sử dụng Eclipse để phát triển Java. Tất cả các nguồn của tôi biên dịch tốt và ứng dụng kết quả biên dịch tốt. Tuy nhiên, tôi tiếp tục nhận được thông báo lỗi "red-x" trong Trình khám phá gói.

Tất cả các nguồn của tôi trong thư mục nguồn này (quá dài so với ảnh chụp nhanh) đều biên dịch tốt, không có nguồn nào hiển thị biểu tượng lỗi "red-x".

Bất kỳ đề xuất nào về cách khắc phục sự cố sẽ được đánh giá cao.

Câu trả lời:


167

vâng, điều này xảy ra đôi khi không có lý do rõ ràng. Bạn có thể chuyển đến tab "Vấn đề" -Tab (ngay bên cạnh đầu ra bảng điều khiển) và xem thông báo lỗi, vì vậy có thể bạn có thể thu hẹp nó theo cách đó.


6
Tôi đặc biệt nhận được nó khi một thành phần không phải Java khác không xác thực được (một ví dụ điển hình là tệp XML, như spring's hoặc maven's).
Spencer Kormos 22/10/08

2
nếu bạn có thể thấy bất kỳ vấn đề nào trong chế độ xem vấn đề, đó là lý do rõ ràng. Tôi vẫn chưa thấy bất kỳ lỗi với không có lý do rõ ràng :)
Nanda

Thêm vào câu trả lời của jan-gressman. Đôi khi khi bạn nhìn vào tab "Problems", bạn sẽ thấy vấn đề là các tệp phụ có dấu gạch dưới trong một số thư mục, ví dụ: __duplicatefile.java. Để khắc phục điều này, hãy nhấp chuột phải vào dự án và chọn: Show In> Navigator. Sau đó, xóa các tệp trùng lặp có gạch dưới và xây dựng dự án của bạn.
GraSim

3
Tôi cũng gặp phải điều này - thường xuyên. Đối với tôi, nó liên quan đến các thay đổi thủ công đối với tệp POM của tôi khi sử dụng Eclipse & Maven và dòng lệnh (mvn) thay thế cho nhau. Để khắc phục: sử dụng tab Vấn đề để chẩn đoán như đã nêu ở trên và nếu đó là POM không đồng bộ, bạn có thể "Cập nhật dự án" với Maven trong Eclipse: "Nhấp chuột phải" vào dự án trong Package Explorer, Chọn "Maven ", Chọn" Cập nhật dự án ". Đảm bảo "Cập nhật cấu hình dự án từ pom.xml", "Làm mới không gian làm việc ..." và "Dự án sạch" được chọn.
Zack Jannsen

Lời khuyên tốt để xem xét Vấn đề. Dự án của tôi cần được cập nhật.
downeyt

16

Điều này xảy ra thường xuyên khi tôi sử dụng Maven, và tôi đã luôn bỏ qua nó cho đến khi tôi tìm thấy câu hỏi này. Bạn cần cập nhật dự án trong trường hợp này (tìm ra điều này bằng cách xem trong ngăn Vấn đề)

Từ menu ngữ cảnh của dự án: Maven -> Cập nhật dự án và chọn các cơ sở mã maven có sẵn

Ngoài ra, bạn có thể sử dụng (Alt + F5) để hiển thị cùng một cửa sổ


1
Ngay cả khi tôi nhấn dự án cập nhật, nó không giải quyết được vấn đề cho tôi. Trong tab vấn đề, tôi nhận được 100 lỗi hiện không xác định / uninitialized / không thể giải quyết cho một loại ... Bất kỳ suy nghĩ làm thế nào để thoát khỏi nhanh thực này
Eswar


6

Sau khi xây dựng. Làm mới dự án và nếu vẫn tồn tại, chỉ cần nhấp chuột phải vào tab Vấn đề trong nhật thực và chọn xóa tất cả.

Điều này thường xảy ra nếu bạn cài đặt maven và các tệp thuộc tính eclipse không được cập nhật đúng cách. Mặc dù dự án của bạn không có bất kỳ lỗi nào. Hi vọng!


Nhấp chuột phải vào khu vực tab Sự cố và chọn "Xóa" - đó là những gì tôi cần nghe!
Gabriel Staples

5

Tôi muốn bắt đầu bằng cách cảm ơn tất cả những người đã trả lời. Nhưng việc dọn dẹp và xây dựng lại là không đủ trong trường hợp của tôi vì vấn đề vẫn còn đó và cần sửa chữa.

Hóa ra là một trong các thư mục gói của tôi đã vô tình bị sao chép nên giờ đã tồn tại một thư mục bổ sung có tên "Bản sao của dagskra" chứa các tệp Java có khai báo gói sai. Ngoài ra, các lỗi trong thư mục "mới" này không hiển thị với "red-x" trong gói mà nó tồn tại:

Ảnh chụp nhanh từ Package Explorer hiển thị thư mục "Bản sao của dagskra" có lỗi http://www.freeimagehosting.net/uploads/a824304b18.png

Đó là gợi ý khi đọc tab "Vấn đề" :-) đã đưa tôi đi đúng hướng, vì vậy tôi chọn câu trả lời đó làm câu trả lời được chấp nhận vì đây là điều tôi cần:

Ảnh chụp nhanh từ tab Sự cố http://www.freeimagehosting.net/uploads/dea26d5dd0.png

Hy vọng điều này sẽ giúp những người khác ...


2

Vì vậy, khi nhận thấy rằng có thể có một gói bị thiếu trong đường dẫn xây dựng, do đó, dấu x màu đỏ đối với dự án chính, để loại bỏ điều này:

1) đi vào "Định cấu hình Đường dẫn xây dựng" của dự án 2) Đường dẫn Xây dựng Java -> Tab Nguồn - bạn sẽ thấy dấu x màu đỏ đối với gói / tệp bị thiếu. nếu nó không còn tồn tại, chỉ cần "loại bỏ" nó.

màu đỏ X cầu xin! :)


1

Đôi khi có lỗi đường dẫn xây dựng trong .project và bạn cần chuyển sang chế độ xem Tài nguyên để thực sự xem tệp đang gây ra lỗi.


1

Tôi gặp sự cố tương tự và các bước dưới đây đã giải quyết được sự cố:

  1. Xóa JRE khỏi PROJECT> thuộc tính> đường dẫn xây dựng java> thư viện.

  2. Khởi động lại nhật thực

  3. Thêm lại JRE

  4. Xây dựng lại dự án bằng cách sử dụng tùy chọn Project> Clean và đã chọn để xây dựng tự động.

Vui lòng thử.


Câu hỏi này đã gần bốn năm tuổi, đã được trả lời, và đây là một câu trả lời trùng lặp. Vui lòng chỉ đăng thông tin mới nếu nó có thể giúp ích cho tác giả của câu hỏi.
Sam

Xin lỗi vì sự nhầm lẫn, tuy nhiên theo cách tôi thấy nó, tôi đã cố gắng đăng câu trả lời mới không trùng lặp.
sun2

Tôi ở đây với cùng một vấn đề vào ngày 28/01/18. vẫn tốt để cung cấp câu trả lời bất kể câu hỏi cũ bao nhiêu.
Tadele Ayelegn

1

Sự lật đổ đôi khi cũng là thủ phạm cho điều này. Nó có thể không liên quan gì đến môi trường của bạn. Tuy nhiên, có thể có sự khác biệt giữa trạng thái hiện tại và địa phương của dự án. Trong trường hợp của tôi, thực hiện cập nhật và sau đó cam kết với máy chủ lật đổ đã cung cấp cho tôi kết quả sạch như mong đợi mà không có bất kỳ cờ nào trong dự án chẳng hạn như X.


Tôi thấy rằng các plugin SVN cho eclipse không ổn định lắm. Tôi tiếp tục gặp vấn đề với chúng. Tôi đổ lỗi cho họ (không có bất kỳ manh mối nào, chỉ là một linh cảm). Những gì bạn đề xuất đã làm việc cho tôi +1.
Pantelis Natsiavas

0

Hãy thử xây dựng lại. Tôi thấy rằng dấu x màu đỏ không phải lúc nào cũng biến mất cho đến khi hoàn thành việc xây dựng lại.


0

Tôi đã gặp một vấn đề tương tự nhiều lần, điều thường xảy ra với tôi là tệp java sẽ thông báo rằng nó sẽ không biên dịch trong trình soạn thảo văn bản nhưng trong trình khám phá gói, nó sẽ thông báo rằng nó đang biên dịch tốt.

Đôi khi thực hiện 'xây dựng lại' hoặc 'xây dựng sạch' không hoạt động, các tệp không thực sự được xây dựng (người ta phải cho rằng nhật thực nghĩ rằng các tệp mà nó có đã được cập nhật) và khi điều này xảy ra, tôi thường mở ra đường dẫn xây dựng java và chỉ cần di chuyển một trong các phụ thuộc của tôi xuống / lên theo thứ tự pecking. Điều này buộc eclipse phải xây dựng lại mọi thứ và nó dường như luôn hoạt động.

Nếu bạn vẫn gặp sự cố, hãy thử sao chép dự án và xem liệu bạn có gặp phải hành vi tương tự hay không và ở lần thử cuối cùng đăng một lỗi cho nhật thực, có thể mất một lúc để họ sửa chữa nhưng ít nhất bạn biết rằng bạn đang bị đã nghe.


0

Để thêm vào câu trả lời trước, một cách cực kỳ để "dọn dẹp" dự án của bạn là xóa nó (tức là xóa tham chiếu của nó khỏi không gian làm việc, không xóa các tệp thực), rồi nhập lại nó.
Đôi khi, nó giúp ...


0

Như những người khác đã nói, các tham chiếu tệp xấu trong đường dẫn xây dựng thường là thủ phạm.

Thường là tệp .jar đã được di chuyển / xóa. Eclipse hy vọng sẽ tìm thấy mọi thứ được tham chiếu trên đường dẫn xây dựng tại vị trí được chỉ định và sẽ khiếu nại nếu không.


0

FindBugs cũng đặt dấu x màu đỏ trên các tệp / gói để chỉ ra lỗi phân tích mã tĩnh.


0

Tôi đã chạy qua điều này. Trường hợp của tôi đã được tham gia nhiều hơn. Dự án được đóng gói tốt từ dòng lệnh maven.

Vài điều tôi đã làm. 1. Một lớp có nhiều nhập khẩu nhầm lẫn giữa nhật thực. Làm sạch chúng đã khắc phục một phần của sự cố 2. Một trường hợp là về một Setter, nhấn F3 điều hướng đến Setter đó mặc dù nhật thực phàn nàn rằng nó không có ở đó. Vì vậy, tôi chỉ cần gõ lại nó và nó hoạt động tốt (ngay cả đối với tất cả các Setters khác)

Tôi vẫn đang đấu tranh với hàm tạo siêu ngầm Mục () không được xác định cho hàm tạo mặc định. Phải xác định một hàm tạo rõ ràng "


0

Đôi khi tôi cũng gặp phải những biểu tượng lỗi khó hiểu đó trên các gói. Một cách để loại bỏ chúng phù hợp với tôi là xóa Thư viện hệ thống JRE khỏi Đường dẫn xây dựng Java và thêm lại nó một cách hiệu quả.


người hỏi hỏi nguyên nhân, bạn được cung cấp một cách giải quyết
Johannes

0

Giải pháp của tôi cuối cùng đã hoạt động là làm sạch tất cả các dự án, đóng nhật thực, làm sạch tất cả các dự án, đóng nhật thực, v.v. ít nhất 5-6 lần. Cuối cùng thì mọi chuyện cũng lắng xuống và mọi thứ đúng như mong đợi. Điều kỳ lạ nhất từng có !!

Và không có lỗi nào trong chế độ xem Sự cố hoặc bảng điều khiển.

Điều này cũng xảy ra sau một sự cố máy tính. Lần gần đây nhất, toàn bộ không gian làm việc của tôi đã bị mất hoàn toàn. Nó vẫn ở đó trên máy tính, nhưng khi tôi cố gắng truy cập vào nó, nó sẽ trống trơn.

Vì bất kỳ lý do gì, sự cố máy tính thực sự được xử lý rất tệ bởi eclipse.


0

Ngoài ra, bạn có thể cập nhật dự án bằng cách nhấp vào,

Nhấp chuột phải vào tên dự án -> Chọn Maven -> Nhấp chuột phải -> Cập nhật dự án.

Điều này đã giúp ích cho tôi.

Cảm ơn.


0

Điều này có thể xảy ra vì một số lý do. Nếu bạn đã thay đổi jdk, mặt Project sẽ có dấu X màu đỏ bên cạnh nó trong khi không có thư mục nào khác hiển thị lỗi. Nếu đúng như vậy, hãy sửa đổi jdk được hiển thị. Điều này thỉnh thoảng xảy ra trong lớp JAX-WS của chúng tôi ( HSG


0

Tôi đã giải quyết vấn đề của mình bằng

  • Đóng tất cả các dự án khác (tức là tùy chọn dự án không liên quan)

  • Làm sạch và xây dựng

Dự án của tôi là android, và điều đó đã làm được.


0

Điều này xảy ra khi tôi tải xuống Fabric.io trên Eclipse Mars nhưng Khởi động lại máy tính đã giải quyết được vấn đề này cho tôi.


0

Trong trường hợp của tôi, cách giải quyết vấn đề này chỉ đơn giản là Đóng Eclipse và mở lại ... Tuy nhiên tôi vẫn không chắc tại sao điều này lại xảy ra hoặc tại sao nó hoạt động. Tôi đang gặp sự cố khi làm sạch dự án của mình (nó cho biết nó không thể Xóa tệp nhất định) và điều này đã giải quyết được nó :):


0

tôi đã có cùng một vấn đề. Tôi đã kiểm tra "Vấn đề" -Tab và không tìm thấy máy chủ nào cho dự án. Tôi đã xác định máy chủ. dấu x đỏ biến mất


0

Bạn có thể vào project-> Buildpath-> Library

Nếu có bất kỳ thư viện nào được đánh dấu X tức là [đánh dấu chéo] hãy xóa nó và cố gắng xây dựng lại. Nó cũng làm việc cho tôi /


0

Tôi gặp sự cố này ngày hôm nay và tìm thấy liên kết này. Tôi đã làm theo như đã đề cập bởi Patrick Schaefer ở trên và mở Hộp thoại cập nhật dự án Maven. Nhấp vào dự án làm việc của tôi và chọn hộp kiểm "Buộc cập nhật ảnh chụp nhanh / bản phát hành" và 'Ok'. Tất cả các chữ thập đỏ đã biến mất. Tôi hy vọng điều này sẽ giúp bất kỳ ai trong tình huống tương tự.


-2

Nhấp chuột phải vào dự án có lỗi, sau đó trong menu phụ, chọn: Maven > UpdateProject >

và sau đó:

  • Chọn hộp kiểm cho tất cả các dự án phụ thuộc
  • chọn buộc cập nhật ảnh chụp nhanh
  • bấm OK.

Điều này đã làm việc cho tôi ..

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.