Ý tưởng Intellij: Nhập dự án Gradle - chưa xác định được JAVA_HOME


335

Intellij Idea 14.1.4 Mac OS X Yosemite 10.10.3 trở lên.

Từ IDE:

Import Project ->
(Chosen directory to import) ->
Import project from external model, Gradle ->
Gradle Home: /usr/local/Cellar/gradle/2.4/libexec
Gradle JVM: Use JAVA_HOME (not defined yet)

Từ vỏ:

echo $JAVA_HOME

/Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home

(được xác định trong .profile: export JAVA_HOME = "$ (/ usr / libexec / java_home -v 1.8)"

Tôi đang thiếu gì Tôi đã kiểm tra các cuộc thảo luận khác trong SO, ví dụ: biến Intellij JAVA_HOME , nhưng không có dấu nhắc SDK dự án.


1
Cùng một vấn đề trên linux, cùng một giải pháp.
SparK

Bản sao có thể có của biến Intellij JAVA_HOME
user123444555621

Câu trả lời:


670

Bạn cần thiết lập SDK cho các dự án Java, như @rizzletang nói, nhưng bạn không cần tạo dự án mới, bạn có thể thực hiện nó từ Welcomemàn hình.

Ở phía dưới bên phải, chọn Configure > Project Defaults > Project Structure: nhập mô tả hình ảnh ở đây

Chọn Projecttab bên trái sẽ cho thấy bạn không có SDK nào được chọn:

nhập mô tả hình ảnh ở đây

Chỉ cần nhấp vào New...nút ở phía bên phải của danh sách thả xuống và trỏ nó vào JDK của bạn. Sau đó, bạn có thể quay lại màn hình nhập và nó sẽ hiển thị.


31
Khi tôi nhấp vào "JDK" từ danh sách thả xuống, tôi chỉ cần chấp nhận thư mục mặc định (Trang chủ). Sau đó tôi đã chấp nhận mặc định cho thư mục đó (khi mở). Intellij đã suy nghĩ rất nhiều ... và nó dường như hoạt động. Cảm ơn!
Scott Bigss

3
Cảm ơn!!! Thực sự nực cười khi bắt đầu với một dự án java / gradle đầu tiên với intelliJ. Ý tôi là, nếu intelliJ có thể khởi động, thì PHẢI đã biết điều gì đó về java được cài đặt trên hệ thống, tại sao không thêm java này theo mặc định ... có thể một số nhà phát triển của họ sẽ quan tâm một ngày nào đó.
Henning

Tuyệt quá! BTW, nếu bạn có một dự án mở, hộp thoại Cấu trúc dự án mặc định ... có thể được truy cập qua Tệp> Cài đặt khác.
DKroot

2
Người dùng IntelliJ phải được trả theo số lần nhấp mà họ buộc bạn phải trải qua. Không có lý do nào khác để chôn vùi một thiết lập đơn giản và quan trọng dưới 5 mức độ tối nghĩa, trừ khi tất nhiên, họ đang cạnh tranh với Microsoft để giành giải thưởng sản phẩm sh ** est của năm.
Abhijit Sarkar

36

Nếu bạn muốn JAVA_HOME của mình được intellij nhận ra, bạn có thể thực hiện một trong những điều sau:

  • Bắt đầu intellij của bạn từ thiết bị đầu cuối / Ứng dụng / IntelliJ IDEA 14.app/Contents/MacOS (điều này sẽ chọn các biến bash env của bạn)
  • Thêm biến env đăng nhập bằng cách thực hiện: launchctl setenv JAVA_HOME "/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home"

Như những người khác đã trả lời, bạn có thể bỏ qua JAVA_HOME bằng cách thiết lập SDK trong cấu trúc dự án.


1
Bài đăng trên blog này cung cấp thêm thông tin về launchctl và cách các vị trí nhất định của .launch.conf không được dùng cho MacOS mới hơn. dowdandassociates.com/blog/content/ cường
George Pantazes

5

Đối với nền tảng Windows :

hãy thử Chạy phiên bản exe 64 bit của IntelliJ từ một đường dẫn tương tự như sau.

lưu ý rằng nó có sẵn bên cạnh ý tưởng mặc định

"C: \ Tệp chương trình (x86) \ JetBrains \ IntelliJ IDEA 15.0 \ bin \ idea 64 .exe"

liên kết


Lời khuyên cho cách thiết lập điều này trên windows sẽ không hữu ích vì phạm vi của câu hỏi này là dành cho một nền tảng khác.
Conrad.Dean

2
@ Conrad.Dean, bạn nói đúng. nhưng tôi kết thúc ở đây khi tìm kiếm cùng một lỗi trong windows và điều này có thể giúp một số người có trường hợp tương tự. dù sao cũng cảm ơn vì bình luận
Iman

3

Chỉ cần thêm tính đầy đủ cho câu trả lời đã chọn ở trên, người ta cũng có thể vào cửa sổ 'Cài đặt dự án' (nếu không có trên màn hình Chào mừng) trong IntelliJ IDEA bằng cách nhấp vào:

Tệp> Cấu trúc dự án (Ctrl + Alt + Shift + S)

Và có thể định nghĩa SDK dự án ở đó!


1

Hãy chắc chắn rằng bạn có một thiết lập jdk. Để làm điều này, tạo một dự án mới và sau đó đi đến tệp -> cấu trúc dự án. Từ đó bạn có thể thêm một jdk mới. Khi đã được thiết lập, hãy quay lại dự án lớp của bạn và bạn nên có một jdk để chọn trong trường 'Gradle JVM'.


1

Đối với MacOS, nó hoạt động với tôi mà không cần mã hóa phiên bản Java cụ thể:

launchctl setenv JAVA_HOME "$(jenv javahome)"

Lệnh thực tế đã làm việc cho tôi % launchctl setenv JAVA_HOME/usr/libexec/java_home
Vagif

0

Hãy thử bắt đầu IntelliJ từ thiết bị đầu cuối. Bạn có thể tìm thấy tệp ứng dụng trong: / Ứng dụng / IntelliJ \ IDEA \ 14.app/Contents/MacOS


Nó hoạt động nhưng nếu tôi không muốn chạy từ shell, tôi sẽ đặt IDEA_JDK ở đâu?
JohnyTex 14/07/2015
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.