2008-10-22 63 views
78

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à các ứng dụng kết quả biên dịch tốt. Tuy nhiên, tôi vẫn nhận được thông báo lỗi "red-x" trong Package Explorer.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?

Tất cả các nguồn của tôi trong thư mục nguồn này (quá dài cho ảnh chụp) biên dịch tốt, không ai trong số chương trình là "đỏ-x" biểu tượng lỗi.

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

Trả lời

140

vâng, điều này đôi khi không có lý do rõ ràng. Bạn có thể vào "vấn đề" -Tab (ngay bên cạnh giao diện điều khiển đầu ra) 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 có được nó khi một thành phần phi-Java không xác nhận (một ví dụ điển hình sẽ là một tập tin XML, như mùa xuân hay maven của). –

+2

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

+0

Thêm vào câu trả lời của jan-gressman. Đôi khi, khi bạn nhìn vào tab "Sự cố", 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. Để sửa lỗi này, nhấp chuột phải vào dự án và chọn: Show In> Navigator. Sau đó xóa các tập tin trùng lặp với gạch dưới và xây dựng dự án của bạn. – GraSim

0

Hãy thử xây dựng lại. Tôi đã tìm thấy rằng x màu đỏ không phải luôn luôn biến mất cho đến khi xây dựng lại được thực hiện.

1

Đôi khi có những xây dựng lỗi đường dẫn trong .project, và bạn cần phải chuyển sang chế độ tài nguyên để thực sự nhìn thấy các tập tin đó gây ra 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ẽ không biên dịch trong trình soạn thảo văn bản nhưng trong trình thám hiểm gói, nó sẽ nói nó 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 cho rằng nhật thực nghĩ rằng các tệp đó đã được cập nhật) và khi điều này xảy ra Tôi thường mở đường dẫn xây dựng java và chỉ di chuyển một trong các phụ thuộc của tôi xuống/lên thứ tự pecking. Điều này buộc nhật thực phải làm việc xây dựng lại mọi thứ và dường như nó 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ó nhận được hành vi tương tự hay không, và có thể mất một lúc để sửa lỗi, nhưng ít nhất bạn biết rằng bạn đang được nghe.

10

Cố gắng làm sạch dự án và xây dựng lại.

+0

cảm ơn nó đã làm việc với tôi – skystar7

0

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

5

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

Hóa ra rằng một trong các thư mục gói của tôi đã vô tình được sao chép sao cho một thư mục phụ hiện có tên là "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 này "mới" không hiển thị với một "đỏ-x" trong gói mà nó tồn tại trong:

Snapshot from Package Explorer showing errorous "Copy of dagskra" directoryr http://www.freeimagehosting.net/uploads/a824304b18.png

Đó là gợi ý của đọc phần "Sự cố" tab :-) rằng biến tôi thành đúng hướng, vì vậy tôi chọn rằng câu trả lời là câu trả lời được chấp nhận vì đây là những gì tôi cần:

Snapshot from Problems tab http://www.freeimagehosting.net/uploads/dea26d5dd0.png

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

0

Vì những người khác có lỗi d, tài liệu tham khảo tập tin 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-đỏ vào tệp/gói để cho biết lỗi phân tích mã tĩnh.

0

Tôi đã thực hiện điều này. Trường hợp của tôi có liên quan 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 mục nhập bị nhầm lẫn giữa nhật thực. Làm sạch chúng một phần cố định của vấn đề 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 nó không có ở đó. Vì vậy, tôi chỉ cần gõ lại nó và nó làm việc tốt (ngay cả đối với tất cả các Setters khác)

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

0

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

1) đi vào 'Configure Buildpath' của dự án 2) Java Build Path -> Tab Source -..! bạn sẽ thấy x đỏ chống lại các gói bị mất/file nếu nó không còn tồn tại, chỉ cần "loại bỏ" nó

đỏ x begone :)

0

Tôi cũng trải nghiệm những biểu tượng lỗi misterious trên các gói theo thời gian. Một cách để loại bỏ chúng hoạt động cho tôi là để loại bỏ hiệu quả Thư viện hệ thống JRE khỏi Đường dẫn xây dựng Java và thêm nó trở lại.

+0

người hỏi đã hỏi nguyên nhân, bạn đã cung cấp giải pháp – johannes

0

Giải pháp cuối cùng của tôi là làm sạch tất cả các dự án, đóng nhật thực, dọn dẹp tất cả các dự án, đóng nhật thực và ít nhất 5-6 lần. Cuối cùng tất cả đều ổn định và mọi thứ đều như mong đợi. Điều kỳ lạ nhất !!

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

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

Vì bất kỳ lý do gì, sự cố máy tính thực sự thực sự bị xử lý nghiêm trọng bởi nhật thực.

1

tôi đã cùng một vấn đề và các bước dưới đây giải quyết vấn đề:

  1. Xóa JRE từ DỰ ÁN> properties> java build path> thư viện.

  2. Restart nhật thực

  3. Thêm JRE lại

  4. Rebuild các dự án sử dụng Project> Làm sạch và lựa chọn để xây dựng tự động chọn.

Vui lòng thử.

+0

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

+0

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

+0

Tôi ở đây với cùng sự cố vào ngày 28/1/18. nó vẫn còn tốt để cung cấp câu trả lời bất kể câu hỏi bao nhiêu tuổi. – tadtab

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, phần tử Dự án 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 trường hợp này xảy ra, hãy sửa đổi jdk được hiển thị. Điều này xảy ra trong dịp trong lớp JAX-WS của chúng tôi (HSG

0

tôi giải quyết của tôi bởi

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

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

Dự án của tôi là android và đã làm như vậy.

1

Subversion đôi khi cũng là thủ phạm cho việc này. Nó có thể không có bất cứ điều gì để làm với môi trường của bạn. Nhưng, 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ả đã được mong đợi mà không có bất kỳ cờ nào trong dự án chẳng hạn như X.

+0

Tôi thấy rằng các plugin SVN cho nhật thực không phải là rất ổn định. Tôi tiếp tục gặp vấn đề với họ. 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. –

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 vấn đề này cho tôi.

0

Trong trường hợp của tôi 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 đã gặp vấn đề Làm sạch dự án của tôi (nó nói rằng nó không thể xóa tập tin nhất định) và điều này giải quyết nó :):

7

Đ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 các dự án trong trường hợp này (tìm ra điều này bằng cách tìm kiếm trong cửa sổ vấn đề)

Từ menu ngữ cảnh dự án: Maven -> Cập nhật dự án và chọn codebases maven sẵn

Hoặc bạn có thể sử dụng (Alt + F5) để hiển thị cùng một cửa sổ

+0

điều này làm việc cho tôi .. cảm ơn –

0

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

2

Sau khi tạo. Làm mới dự án và nếu vẫn cò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. Hy vọng!

0

Bạn có thể vào dự án-> Buildpath-> Thư viện

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

-1

Nhấp chuột phải vào dự án với các lỗi, sau đó trong các sub-menu 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 cập nhật lực của ảnh chụp nhanh
  • nhấp vào OK.

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

Các vấn đề liên quan