2017-05-24 30 views
6

xin vui lòng cho tôi biết nếu câu hỏi của tôi là không rõ ràng,Không thể tìm thấy hoặc nạp lớp chính trong scala trong IntelliJ IDE

Tôi đã tìm kiếm lỗi này, nhưng câu trả lời cho lỗi này là dành cho java, nhưng trường hợp của tôi là scala,

tôi cố gắng để chạy dự án này trong Intellij IDE sentimenAnalysis

nhưng nó throws lỗi, và đây cũng là cấu trúc của dự án class Not found

Update1 Theo câu trả lời, thêm $ vào cuối tên của lớp tìm kiếm enter image description here

cập nhật 2 sau khi thêm nhiệm vụ SBT: enter image description here

cập nhật 3 vấn đề của tôi đã được giải quyết bởi nhập dự án, thay vì trực tiếp nhận được github, có thể là cấu hình thủ công mà Mike Allen đã nói có thể khắc phục sự cố nhưng tôi không thể áp dụng thành công điều đó,

Trả lời

7

Có lẽ bạn đã nhập dự án bằng cách nào đó sai. Tôi thấy thư mục scala không được đánh dấu là nguồn. Thông thường, bạn thậm chí không cần thiết lập Chạy cấu hình theo cách thủ công cho dự án Scala SBT. Bạn có Plugins Scala và SBT trong IDE của bạn?

Bạn nên mở các dự án SBT thông qua "Dự án nhập" và chọn tệp "build.sbt". Tôi cũng khuyên bạn nên bật tự động nhập để cài đặt tất cả các phụ thuộc.

Đó là cách nó trông cho tôi: Here how it looks for me

Nếu bạn vẫn muốn làm cho nó bằng tay cấu hình của bạn nên làm việc. Đó là cấu hình chạy của tôi mà làm việc:

My run configuration

+0

nhờ cho câu trả lời của bạn, Thật sự tôi mở dự án throgh github, là nó okay để làm như vậy? – saria

+1

Vì vậy, dự án của bạn bị định cấu hình sai. Bạn có thể sửa chữa nó bằng tay.Nhưng dễ dàng hơn nhiều là chỉ cần nhập nó như tôi đã nói từ đường dẫn bạn đã nhân bản nó – SeriousDron

+0

nhưng tôi không có "dự án nhập" trong tập tin trình đơn – saria

1

Tạo một dự án mới và chắc chắn rằng SBT là thích hợp nạp cùng với Scala Thư viện. Điều này xảy ra với nhiều lần, kết nối internet xấu hoặc thất bại của thư viện Scala/SBT tải có thể là một số lý do. Tốt nhất của may mắn cho dự án tiếp theo, nhà phát triển hạnh phúc & Coders.

1

Trong trường hợp của tôi, object trong số object MyObject extends App được lồng vào nhau, nếu bạn có ý nghĩa không rõ ràng trong tệp scala của bạn, nó không nằm dưới bất kỳ đối tượng nào khác mà nó làm cho nó hoạt động.

Netsted gây ra lỗi này trong IntelliJ:

object External { 
    object MyMain extends App // Could not find or load main class in scala in intellij IDE 

} 

Trong khi bên dưới unested làm việc:

object External { } 
object MyMain extends App // Worked! 
Các vấn đề liên quan