Lỗi Eclipse: Không thể giải quyết XXX nhập


135

Tôi đang cố gắng làm việc với Hibernate trong Eclipse. Tôi đang tạo một dự án đơn giản mới và tôi cũng đã tải xuống một dự án đồng nghiệp, thông qua CVS. Cả hai đều không hoạt động, trong khi trên Eclipse trường đại học của tôi làm. Vấn đề là, đối với mỗi lần nhập của một lớp Hibernate, Eclipse nói:

The import org.hibernate cannot be resolved

Nhưng tất cả các lọ Hibernate đều nằm trong đường dẫn xây dựng, đó là:

antlr-2.7.6.jar
cglib-2.2.jar
commons-collections-3.1.jar
dom4j-1.6.1.jar
hibernate3.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
javassist-3.12.0.GA.jar
jta-1.1.jar
slf4j-api-1.6.1.jar

1
Làm thế nào bạn thêm các jar trong đường dẫn xây dựng của bạn?
Jigar Joshi

3
theo Thuộc tính> Đường dẫn xây dựng Java> Thư viện> Thêm JAR bên ngoài
màu xanh lam


1
Nếu nó hoạt động và bây giờ họ không làm, hãy xem câu trả lời của @dogbane bên dưới ...
Shanimal 22/1/2016

kiểm tra nếu có bất kỳ khoảng trống trong thư mục nhập khẩu của bạn. nếu có một khoảng trắng, hãy xóa khoảng trắng và nhập các dự án vào nhật thực.
schin chan

Câu trả lời:


283

Hãy thử làm sạch dự án của bạn bằng cách đi đến mục menu sau:

Project > Clean...

Nếu điều đó không hiệu quả, hãy thử xóa các lọ khỏi đường dẫn xây dựng và thêm lại chúng.


5
có thể là một vấn đề JRE. Hãy thử chọn một "JRE thay thế" trong các thuộc tính của dự án.
dogbane

10
Sạch cũng làm việc cho tôi. Chính xác thì chuyện gì đã xảy ra (mọi thứ đột ngột biến mất) và Clean giúp đỡ như thế nào?
Á hậu Saber

1
Điều này cũng giải quyết vấn đề cho tôi; nó không phải là một dự án ngủ đông, mà là một dự án libGdx , gọi java nhập khẩu của tôi và không phải là bình. Cùng thắc mắc về @SabreRunner, và cũng: có lỗi ở đâu đó trong các công cụ môi trường?
Zac

3
Làm việc cho tôi quá. Thật là bực bội khi menu trợ giúp theo ngữ cảnh tìm thấy lớp của bạn và gõ tay nhập cùng một cách nhập trên các mục được đánh dấu "không thể giải quyết" và không có lỗi ...
Shanimal

1
Cách này KHÔNG giúp được gì trong trường hợp của tôi. Phiên bản Eclipse của tôi là: Bản phát hành neon.3 (4.6.3)
Timothy.Li

27

Rõ ràng có những trường hợp có một vấn đề hợp lệ tuy nhiên đôi khi Eclipse lại đưa ra lỗi này mà không có lý do chính đáng.

Đây vẫn là (2019-03) là một lỗi Eclipse (2010) cũ có thể được giải quyết bằng cách thực hiện một thay đổi không đáng kể đối với các cài đặt dự án.

Cài đặt tôi chọn để thay đổi là: Project> Properties> Java Build Path> Order and Export> thực hiện thay đổi thứ tự vô nghĩa> Áp dụng.

Thay đổi thứ tự trở lại không hồi quy vấn đề. Chỉ cần chạm vào tệp cũng có thể giải quyết vấn đề (Tôi sẽ kiểm tra lần chạm tiếp theo).


1
Tệp> Thuộc tính nên được thay đổi thành Dự án> Thuộc tính.
Timothy.Li

Cách này KHÔNG giúp được gì trong trường hợp của tôi. Phiên bản Eclipse của tôi là: Bản phát hành neon.3 (4.6.3)
Timothy.Li

Đối với tôi, Thư viện hệ thống JRE phải ở trên Maven Dependencies trong tab xuất & đặt hàng Đường dẫn xây dựng.
Anthony Hayward

2
Lỗi này bây giờ ít nhất là 9 tuổi.
dùng1133275

Nó vẫn ở đó, tháng 11 năm 2019. Sheesh.
Tullochgorum

22

Làm sạch dự án. Và kiểm tra kỹ các lọ thực sự trên đường dẫn xây dựng (không có lỗi). Cũng đảm bảo rằng không có gì trong chế độ xem "Vấn đề".


Tôi đã thử điều này nhiều lần rồi: với các lọ riêng lẻ, trong thư viện, ... Có vẻ như là một lỗi kỳ lạ!
xanh lam

1
Bạn có bất cứ điều gì trong quan điểm Vấn đề?
Bozho

Chỉ có các vấn đề tôi đã nói và cảnh báo về loại "Lớp tuần tự hóa Azienda không khai báo trường serialVersionUID tĩnh cuối cùng của loại dài".
xanh lam

18

Tôi tìm thấy vấn đề. Đó là hibernate3.jar. Tôi không biết tại sao nó không được trích xuất tốt từ .zip, có thể bị hỏng . Một cách tốt để kiểm tra xem các bình có bị hỏng hay không đang điều hướng qua cấu trúc cây của chúng trong "Project Explorer" trong Eclipse: nếu bạn không thể mở rộng một nút jar thì có lẽ nó bị hỏng. Tôi đã thấy rằng các gói bị hỏng thường xảy ra khi bạn kéo và thả chúng vào "Project Explorer". Có lẽ tốt hơn là di chuyển và sao chép chúng trong môi trường HĐH! Cảm ơn tất cả.


17

Nếu là một dự án Maven, cũng nhấp vào Maven >> Cập nhật dự án ... (F5)

Cập nhật dự án Maven


Nếu bạn nhập một dự án maven là "dự án Java" thì vấn đề này xảy ra. Chuyển đổi dự án thành dự án maven và cập nhật như bạn đã nói thì vấn đề không còn nữa.
kodmanyagha

8

Tôi đã giải quyết nó bằng cách xóa dự án (không xóa trên đĩa) và nhập lại.


8
  1. dự án sạch dự án -> sạch ...
  2. Nhấp chuột phải vào dự án -> BuildPath -> Cấu hình BuildPath -> tab Thư viện ->

Nhấp đúp chuột vào THƯ VIỆN HỆ THỐNG JRE -> Sau đó chọn JRE thay thế


6

Tôi đã có một vấn đề, rằng classpath đã bị hỏng bằng cách nào đó.

Vì vậy, nhấp chuột phải vào dự án trong Gói thám hiểm> Công cụ trình cắm> Cập nhật đường dẫn lớp ... đã làm điều đó cho tôi


Trong Bản phát hành neon.3 (4.6.3), KHÔNG có công cụ Plug-in trong menu ngữ cảnh bằng cách nhấp chuột phải vào dự án trong Gói thám hiểm
Timothy.Li

6

Tôi đã giải quyết vấn đề này bằng cách cập nhật dự án: nhấp chuột phải vào dự án Maven, chọn Maven -> Cập nhật dự án -> chọn hộp kiểm Bắt buộc cập nhật ảnh chụp / phát hành.


5

Hãy thử thêm Thư viện hệ thống JRE trong đường dẫn xây dựng dự án của bạn.


3

Với tôi, nó đã giúp thay đổi mức độ tuân thủ của trình biên dịch . Vì lý do không rõ, nó được đặt thành 1.6 và tôi đổi nó thành 1.8.

Khi ở cấp độ dự án, nhấp chuột phải vào dự án> Thuộc tính> Trình biên dịch Java, trong khi ở Eclipse, nhấp vào menu Window> Preferences> Java> Trình biên dịch.


3

Tôi đã thử tất cả các câu trả lời ở trên nhưng không có may mắn. Trong trường hợp của tôi, có một thư mục build / class được tạo với một số tệp ". Class" bổ sung. Cuối cùng tôi đã đi đến trình thám hiểm gói, nhấp chuột phải vào dự án và chọn tùy chọn "Làm mới" và điều đó làm cho thư mục xây dựng / lớp có sẵn một lần nữa giải quyết vấn đề.


3

Điều này đã giải quyết vấn đề của tôi.

1) Dự án sạch dự án -> sạch ...

2) Nhấp chuột phải vào dự án -> BuildPath -> Cấu hình BuildPath -> tab Thư viện -> Nhấp đúp chuột vào THƯ VIỆN HỆ THỐNG JRE -> Sau đó chọn JRE thay thế

3) Nhấp vào Lưu

4) Một lần nữa đi đến dự án của bạn trong trình thám hiểm dự án và nhấp chuột phải vào dự án -> BuildPath -> Cấu hình tab BuildPath -> Thư viện -> Nhấp đúp chuột vào THƯ VIỆN HỆ THỐNG JRE -> Lần này chọn "Môi trường thực thi"

5) Áp dụng


2

Trong trường hợp của tôi, nó là một cái bình bị hỏng trong kho lưu trữ Maven. Xóa các tệp jar trong kho lưu trữ và để Maven tải xuống lại.

Khi tôi chạy mvn clean installtừ dòng lệnh, nó chạy tốt, nhưng Eclipse vẫn không thể biên dịch mã. Khi tôi chạy maven installtrong Eclipse thì tôi thấy Maven phàn nàn về tệp jar xấu. Vì vậy, tôi đã xóa nó và chạy maven installlại. Vấn đề đã biến mất.


2

Để tải xuống tệp jar không tồn tại trong thư mục .m2 của bạn, bạn nên chạy mvn clean installlệnh cho dự án pom.xml của bạn. Sau đó, bạn nên cập nhật các phụ thuộc dự án bằng cách nhấp vào Alt+F5. Điều này làm việc cho tôi!


2

Xóa "module-info.java" đã giải quyết vấn đề cho tôi!

Tập tin này được tạo tự động và xuất hiện trong hệ thống phân cấp của tôi ...


1

Tôi gặp vấn đề tương tự vì tôi đã thêm một jar tôi đã tạo, nơi tôi đã đặt thư mục cơ sở đóng gói khác với thư mục cơ sở của các lớp. Kết quả là lớp vd java.util.Listphải được nhập vào util.Listmặc dù lần nhập được đề xuất là lần đầu tiên.

Kiểm tra các lọ được nhập trong các thư viện được tham chiếu để xem chúng được nhập chính xác


1

Tôi không hiểu lý do đằng sau điều này nhưng điều này đã giải quyết vấn đề tương tự mà tôi đang gặp phải. Bạn có thể yêu cầu các bước này trước khi thực hiện các bước được đề cập trong các giải pháp trên (Làm sạch tất cả các dự án và Xây dựng tự động).

nhấp chuột phải vào dự án -> Thuộc tính -> Các khía cạnh dự án -> chọn Java -> Áp dụng


1

Bất cứ khi nào bạn gặp phải vấn đề này, chỉ cần vào Project> Clean, sau đó chọn Clean all dự án. Nó sẽ được giải quyết, nếu không hãy cố gắng xóa những cái lọ đó và thêm chúng một lần nữa. Điều cuối cùng sẽ là thử khởi động lại Eclipse.


1

pom.xml

Nếu đó là một dự án Maven, hãy truy cập pom.xml và xóa tất cả các tệp phụ thuộc. Lưu nó Dự án sẽ tự động xây dựng.

Sau đó thêm lọ phụ thuộc một lần nữa (bạn có thể làm Ctrl+ Z). Lưu nó Dự án sẽ tự động xây dựng và bạn sẽ không thấy lỗi đó.


1

Xóa phần phụ thuộc trong POM.XML của bạn và tải xuống tệp jar và thêm nó vào buildpath.

đôi khi -> maven sẽ không phản ánh những thay đổi mới và điều này có thể gây ra loại thăm dò này


0

Vui lòng thử và kiểm tra xem tất cả các lib đang ở vị trí nào. Tôi gặp vấn đề tương tự. Nhưng tôi đã giải quyết nó bằng cách di chuyển thư mục lib và thêm tất cả các lọ lại trong đường dẫn xây dựng.


0

Tôi đã có cùng một vấn đề. Tôi đã tải xuống jar và thêm nó vào đường dẫn xây dựng, nhưng tôi không nhận thấy rằng tiện ích mở rộng là .jar.zip. Tôi lại chuyển đổi nó thành .jar và thêm vào đường dẫn xây dựng.

Nó giải quyết vấn đề của tôi. Đó là một sai lầm rất ngớ ngẩn nhưng tôi đã viết nó ở đây trong trường hợp nó có thể giúp đỡ ai đó.


0

Nếu bạn đang làm việc với Maven và gặp sự cố này, hãy kiểm tra máy chủ kho lưu trữ (ví dụ: máy chủ nexus), nếu tạo tác có ở đó không. Đôi khi, họ có thể thay đổi tên của cổ vật và bạn cố gắng lấy cổ vật với tên cũ của nó.


0

Giải quyết bằng cách liên kết nguồn. Từ trình thám hiểm nhấp chuột phải vào dự án, chọn thuộc tính, chọn Đường dẫn xây dựng Java, chọn Nguồn từ các tab, nhấn nút "LinkSource". Và chỉ định thư mục để thêm vào dự án.


0

Tôi không thể nhập khẩu là tốt. Mất vài giờ để tôi nhận ra rằng tôi đã cố gắng sử dụng một thư viện ràng buộc 1.6, trong khi tôi đang cố gắng biên dịch cho 1.8. Khi tôi chuyển dự án của mình sang sử dụng 1.6, vấn đề nhập đã hết. Tất cả các thông báo lỗi đã dẫn đến sai hướng. Chỉ trong nguồn tôi đã tìm thấy một số hạn chế hướng đến phiên bản 1.6. Và: Ví dụ:


0

Tôi đã đối mặt với cùng một vấn đề và tôi đã giải quyết nó bằng cách xóa một cái bình được thêm hai lần vào hai phần phụ thuộc khác nhau vào tệp pom.xml của tôi. Loại bỏ một trong những phụ thuộc đã giải quyết vấn đề.


0

Đối với tôi, dường như tôi đã thêm cấp độ sai của thư mục. Tôi đã tải xuống Trình phân tích cú pháp HTML Jericho , giải nén nó vào eclipse-workspace/libraries/jericho-html-3.4/

Sau đó, khi thêm thư mục này vào thư mục thư viện bên ngoài, mẹo là điều hướng đến thư mục đó, tô sáng thư mục "lớp" và nhấn Open. Trước đây tôi đã thử thêm cả phụ huynh và các cấp độ khác của thư mục con và nó không hoạt động.

Điều này được giải thích khá nhiều ở đây , nó nói

Bạn cũng có thể thêm một thư mục lớp , một thư mục chứa các tệp lớp Java không có trong JAR.

Có hai bài học kinh nghiệm ở đây cho tôi, xin lỗi nếu đây không phải là chủ đề:

  1. Đọc hướng dẫn cẩn thận - như từng chữ!

  2. Đừng bỏ cuộc - đây là lần đầu tiên tôi thêm thư viện, tôi mất khoảng hai giờ để thêm nó vào.


0

Giải pháp cho IDE Eclipse

Trong trường hợp của tôi, tôi cố định nó bằng cách sửa chữa một trong hai tập tin đó có thể bị hỏng: classpath hoặc .project .

Để sửa chữa bất kỳ tập tin bị lỗi, bạn có thể sao chép từ một dự án mà có cả .project tập tin hoặc classpath tập tin trong câu hỏi và là lỗi. Nhưng hãy chắc chắn không thêm các cài đặt bổ sung sẽ không được sử dụng.


0

[ Công việc khung đánh lửa mã ] [ Thư viện nhập ]

Hãy thử nhấp chuột phải vào dự án trong chế độ xem Project Explorer, chọn làm mới . Tất cả các dấu hiệu lỗi đã đi đáng ngạc nhiên đến trường hợp của tôi.


Tôi không giỏi về Eclipse. Tôi bắt đầu sử dụng Android Studio để phát triển Android. Nhưng, thật khó chịu khi thấy các dấu hiệu lỗi màu đỏ lơ lửng mọi lúc trong khi toàn bộ dự án vẫn hoạt động tốt. Nó xảy ra với tôi khi tôi sử dụng trình soạn thảo để nhập thư viện như thế này:

require __DIR__ . '/../../vendor/autoload.php';

use \Firebase\JWT\JWT;
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.