intellij - spring không được nhận dạng (cấu hình Unmapped Spring)


97

Tôi đang sử dụng IntelliJ IDEA và tất cả các plugin cho Spring đã được kích hoạt, nhưng khi tôi tải dự án Maven của mình, tôi gặp lỗi sau:

Kiểm tra
cấu hình Spring Đã tìm thấy các tệp cấu hình Spring chưa được ánh xạ.
Vui lòng cấu hình / thiết lập Spring facet cho các mô-đun

Bất kỳ ý tưởng nào đã ngăn nó được cấu hình tự động?


7
Tôi muốn thêm một số thông tin vào câu hỏi. Khi cửa sổ bật lên này xuất hiện, điều đó có nghĩa là Intellij đang "nghi ngờ" rằng bạn có một số tệp trong (các) mô-đun của dự án đã mở mà lý tưởng phải là ĐẬU PHUN và bạn có thể CUNG CẤP "bối cảnh" mùa xuân cho họ và xác nhận với Intellij rằng họ thực sự là spring bean trong dự án của bạn nên lần tới khi bạn chơi với các tệp này, Intellij có thể cung cấp các đề xuất / trợ giúp chỉnh sửa mã cụ thể cho mã spring bean. Sẽ không có hại gì nếu bạn bỏ qua cửa sổ bật lên này, nhưng nếu bạn đang sử dụng IDE phong phú, tại sao lại bỏ lỡ sự tuyệt vời.
Bhavesh Agarwal

Câu trả lời:


98

Để làm rõ các câu trả lời ở trên, bạn cần làm như sau:

  1. Đi tới hộp thoại cấu trúc dự án (bằng cách nhấp vào cảnh báo hoặc thông qua tệp => cấu trúc dự án
  2. chọn mục mô-đun trong danh sách bên trái
  3. đi qua và nhấp chuột phải vào các mô-đun có tệp bị thiếu và chọn Thêm => Mùa xuân
  4. trong tab mới, nhấp vào nút +
  5. bây giờ bạn sẽ thấy danh sách các tệp xml. Chọn các hộp bên cạnh chúng

Tôi không hoàn toàn rõ điều này đạt được gì ngoài việc loại bỏ các cảnh báo! Nếu ai đó có thể làm sáng tỏ điều đó thì tốt.


Khi cấu hình được ánh xạ. Tôi nghĩ rằng khi bạn sử dụng spring bean từ mã, một biểu tượng hiển thị ở bên trái khi nhấp chuột vào sẽ đưa bạn đến định nghĩa bean trong XML. Và tương tự khi bạn cuộn xml, một biểu tượng xuất hiện ở bên trái sẽ hiển thị cách sử dụng của bean này trong các lớp khác nhau. Tôi đang sử dụng IntelliJ Ultimate phiên bản 14.
pshirishreddy

@pshirishreddy Nó có vẻ hoạt động hơi nghiêm trọng đối với tôi. Mặc dù vậy, chúng tôi có nhiều bối cảnh ứng dụng cho các thiết lập thử nghiệm khác nhau
JonnyRaa

10

Bạn cần kiểm tra xem IntelliJ sẽ sử dụng những cấu hình nào để kiểm tra các hạt có dây.

Chuyển đến FileProject StructureProject SettingsModules.

Chọn mô-đun của bạn và chọn (hoặc thêm) khía cạnh Spring.
Trong khu vực bên phải, bạn có thể thêm hoặc sửa đổi ngữ cảnh ứng dụng được sử dụng bởi mô-đun của bạn. Chỉ cần kiểm tra mọi cấu hình bạn cần trong ngữ cảnh của mình.


3
trong khi tôi nên làm điều đó theo cách thủ công? các đồng nghiệp của tôi không có cùng một vấn đề. nó đang được cấu hình trước khi họ nhập dự án. Câu hỏi của tôi là những gì tôi đã làm sai để ngăn ngừa được cấu hình tự động
akaliza

Tôi không biết cách nào khác để làm điều đó theo cách thủ công. Theo như tôi biết thì nó không tự động áp dụng những thay đổi đó.
Bart

1
đó là, bạn chỉ phải chấp nhận bấm vào liên kết nói "cấu hình" khi dự án đang được nhập khẩu
akaliza

Sẽ ghi nhớ điều đó vào lần sau khi nó bật lên :)
Bart

4

Ngoài các bước trên (trong câu trả lời của Bart), tôi phải

 1. click on the unmapped spring beans from the warning dialog box 
 2. select all the beans file
 3. set application context as "Spring Application Context" (You many want to change it to other contexts, if you need)

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


2

Tôi chỉ muốn thêm điều đó cho dự án của chúng tôi (ý tưởng 13), nhìn vào FileProject StructureProject SettingsModules(Mùa xuân) mọi thứ đều có vẻ chính xác, nhưng sau đó khi bạn đánh dấu tất cả chúng và nhấp vào bút chì chỉnh sửa, đó là lúc chúng ta có thể thực sự thấy những nó đang phàn nàn về. Trong trường hợp của chúng tôi, tất cả chúng đều nằm trong danh mục chiến tranh bùng nổ của chúng tôi, vì vậy chúng chỉ hiển thị sau khi xây dựng đầy đủ ban đầu.


2

Cùng một trường hợp với nhóm của tôi, có vẻ như "Nhập dự án Maven tự động" (Cài đặt / Maven / Nhập) không được chọn trên cài đặt IntelliJ mới.

Vì vậy, hãy kiểm tra nó và lần tới bạn sẽ nhập tệp pom.xml của dự án dựa trên Spring vào cửa sổ "Maven project", sau đó một cửa sổ màu xanh lá cây sẽ xuất hiện ngay bên phải và sẽ đợi xác thực của bạn để kích hoạt phân tích các tệp cấu hình Spring được phát hiện.

Hy vọng nó giúp!

CHỈNH SỬA: tại thời điểm này, việc sử dụng JDK 1.7 thay vì 1.8 + bắt đầu từ một "dự án trống" mới cực kỳ đơn giản (IntelliJ) dường như cũng cần thiết trên một máy tính xách tay đồng nghiệp khác


2

Nếu bạn chỉ muốn tắt thông báo, chỉ cần làm như sau:

IntelliJ > Preferences > Notifications > Spring Configuration Check > No popup

Tôi có thể tìm cài đặt này cho IntelliJ phiên bản 14 Ultimate ở đâu?
atom88,

Có vẻ như đối với IntelliJ 14, Ultimate, bạn có thể tìm thấy nó ở đây: Cài đặt | Ngoại hình & Hành vi | Thông báo | Kiểm tra cấu hình mùa xuân
atom88
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.