提示The selected directory is not a valid home for JDK,但jdk是从oracle官网下的,home目录也没有选错,是什么原因呢?
经过仔细的观察,发现jdk8的目录是这样子的:
jdk11解压后的目录是这样子的:
少了关键的jre目录等很多东西,idea2016自然不能识别了。
那为什么会没有jre文件夹了呢?粗略查了一下,原因是
-
jdk本身就等于jre+开发工具,直接可以用jdk代用jre
-
以前的jdk安装一套外置jre,是为了让jdk版本稳定而保持外置jre可以独立更新
-
11版以后,需要另外单独下载jre。然而现在jre11并没有发布,下载不到。java对最终用户的jre都推荐默认安装jre8,连jre9 jre10都没有推荐。
如果想要生成jre文件夹,可以设置好环境变量后运行命令:
jlink --module-path jmods --add-modules java.desktop --output jre
会在本目录下生成jre文件夹。
或者从本地jdk8中copy一个jre过去。
但是,有了jre文件夹后idea依然识别home目录,说明不止差一个目录这么简单。最好的解决办法还是安装新版本IDEA2018。
可是IDEA2018版在mac上并不好破解,不建议轻易升级idea。
转了一圈,我发现eclipse是目前最佳的选择,果然情人还是老的好。