Làm cách nào để kiểm tra xem Java SDK có được cài đặt trên máy Mac không?
Có một dòng lệnh cho điều này?
Làm cách nào để kiểm tra xem Java SDK có được cài đặt trên máy Mac không?
Có một dòng lệnh cho điều này?
Câu trả lời:
javac -version
trong một thiết bị đầu cuối sẽ làm
Bạn có thể tận dụng java_home
nhị phân của người trợ giúp OS X
cho những gì bạn đang tìm kiếm.
Để liệt kê tất cả các phiên bản của JDK đã cài đặt:
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (2):
1.8.0_51, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
1.7.0_79, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
Để yêu cầu đường dẫn JAVA_HOME của phiên bản JDK cụ thể, bạn có thể làm:
$ /usr/libexec/java_home -v 1.7
/Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents/Home
$ /usr/libexec/java_home -v 1.8
/Library/Java/JavaVirtualMachines/jdk1.8.0_51.jdk/Contents/Home
Bạn có thể tận dụng các lệnh trên trong tập lệnh của mình như thế này:
REQUESTED_JAVA_VERSION="1.7"
if POSSIBLE_JAVA_HOME="$(/usr/libexec/java_home -v $REQUESTED_JAVA_VERSION 2>/dev/null)"; then
# Do this if you want to export JAVA_HOME
export JAVA_HOME="$POSSIBLE_JAVA_HOME"
echo "Java SDK is installed"
else
echo "Did not find any installed JDK for version $REQUESTED_JAVA_VERSION"
fi
Bạn cũng có thể làm if-other và kiểm tra nhiều phiên bản java khác nhau.
Nếu bạn thích đầu ra XML, java_home cũng có tùy chọn -X để đầu ra bằng XML.
$ /usr/libexec/java_home --help
Usage: java_home [options...]
Returns the path to a Java home directory from the current user's settings.
Options:
[-v/--version <version>] Filter Java versions in the "JVMVersion" form 1.X(+ or *).
[-a/--arch <architecture>] Filter JVMs matching architecture (i386, x86_64, etc).
[-d/--datamodel <datamodel>] Filter JVMs capable of -d32 or -d64
[-t/--task <task>] Use the JVM list for a specific task (Applets, WebStart, BundledApp, JNI, or CommandLine)
[-F/--failfast] Fail when filters return no JVMs, do not continue with default.
[ --exec <command> ...] Execute the $JAVA_HOME/bin/<command> with the remaining arguments.
[-R/--request] Request installation of a Java Runtime if not installed.
[-X/--xml] Print full JVM list and additional data as XML plist.
[-V/--verbose] Print full JVM list with architectures.
[-h/--help] This usage information.
Nhập vào một thiết bị đầu cuối:
which javac
Nó sẽ cho bạn thấy một cái gì đó như
/usr/bin/javac
javac
shim theo mặc định. Nó không liên quan đến việc Java có được cài đặt hay không.
Lệnh dưới đây hoạt động khá tốt:
javac -version
Tôi cũng đã xác minh thủ công bằng cách điều hướng đến Thư mục Java trên máy Mac của mình
/Library/Java/JavaVirtualMachines/jdk1.8.0_131.jdk
Chỉ cần gõ javac
. Nếu nó được cài đặt, bạn sẽ có được thông tin sử dụng, nếu không nó sẽ hỏi bạn có muốn cài đặt Java không.
Hãy chắc chắn rằng bạn xác định chính xác JDK của dự án và khởi động lại IntelliJ (khởi động lại đầy đủ).
chạy lệnh để xem:
chuyển đổi javac
Ngoài ra, bạn có thể xác minh thủ công bằng cách đi đến vị trí cụ thể và sau đó kiểm tra. Để làm điều này chạy bên dưới lệnh trong thiết bị đầu cuối mac
cd / Thư viện / Java / JavaVirtualMachines /
Sau đó chạy ls
lệnh trong terminal một lần nữa. Bây giờ bạn có thể thấy phiên bản & gói jdk nếu tồn tại trong máy tính của bạn.