我想用Nix安裝OpenJDK 8或Oracle JDK 8以及Scala。在macOS上使用Nix安裝Scala Sierra
我通過直接安裝Oracle JDK開始。然後我通過運行nix-env -i scala
通過Nix安裝scala。這完成了。
但是,運行scalac
失敗:
% scala
Exception in thread "main" java.lang.UnsupportedClassVersionError: scala/tools/nsc/MainGenericRunner : Unsupported major.minor version 52.0
at java.lang.ClassLoader.findBootstrapClass(Native Method)
at java.lang.ClassLoader.findBootstrapClassOrNull(ClassLoader.java:1070)
at java.lang.ClassLoader.loadClass(ClassLoader.java:414)
at java.lang.ClassLoader.loadClass(ClassLoader.java:412)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
我有JAVA_HOME設置:
% echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.8.0_121.jdk/Contents/Home
要重申,我想通過尼克斯安裝斯卡拉。我想學習一種或多種方法來做到這一點。一些注意事項:
- 我很高興詳細瞭解Nix包是如何工作的,如果需要的話。
- 我還沒有得到一個關於如何在MacOS上通過Nix安裝JDK的清晰權威解釋。這似乎是故事的關鍵部分。
的錯誤是不支持的'版本MAJOR.MINOR這52.0'意味着你JRE版本可能比你的SDK版本較低提交給美國nixpkgs的問題。您可能安裝了Java 7 JRE,我會驗證您是否安裝了正確的版本。基本上你試圖在較舊的運行時運行爲java 8編譯的代碼。 – user1875195
@ user1875195您的評估似乎是正確的;我檢查了'scala'的Nix安裝腳本(一個填充程序),並將JAVA_HOME設置爲OpenJDK 7.接下來,我需要弄清楚如何告訴Nix安裝版本8 JDK或依賴已安裝的JDK。歡迎您提供完整的答案(這些僅僅是評論,對澄清有用) –