1

目前我与 grails 一起使用的当前 java 开发工具包版本存在问题,这在使用 springboot 和 grails 上的某些 java 8 版本时很常见

原因:java.lang.IllegalArgumentException:无法在 java.lang.reflect.Method.copy(Method.java:151) 处复制非根方法 ... 120 更多

是否有任何 sdk 管理器可以用来下载特定的 java 版本,它不仅可以下载,还可以下载

  1. 设置当前java路径
  2. 设置当前的 java home
  3. 如果可能,设置 java 选项

我知道 ubuntu 中的 update_alrenatives 但我说的是 gvm 或 sdkman 之类的东西

其他好的选择将不胜感激,谢谢

4

3 回答 3

7

我使用Jabba来管理我的 java 环境。在 Linux/Mac OS X 上使用简单的curl或命令即可轻松安装和开始使用。wget

 curl -sL https://github.com/shyiko/jabba/raw/master/install.sh | bash && . ~/.jabba/jabba.sh

或者

 wget -qO- https://github.com/shyiko/jabba/raw/master/install.sh | bash && . ~/.jabba/jabba.sh

对于 Windows 10(在 powershell 中)

Invoke-Expression (wget https://github.com/shyiko/jabba/raw/master/install.ps1 -UseBasicParsing).Content

一旦完成,安装和切换 jdk 就很容易了。

安装

安装 Oracle JDK

jabba install 1.8

安装 Zulu OpenJDK

jabba install zulu@1.8.72

从自定义 URL 或文件路径安装

jabba install 1.8.0-custom=tgz+http://example.com/distribution.tar.gz
jabba install 1.8.0-custom=zip+file:///opt/distribution.zip

每次安装后都会自动调用“jabba use”。

列出 JDK 的

列出所有已安装的 JDK

jabba ls

列出可用的 JDK

jabba ls-remote

切换JDK

切换到不同版本的 JDK

jabba use 1.6.65

切换到 .jabbarc 中指定的 JDK

jabba use

设置默认JDK

echo "1.8" > .jabbarc

每次打开新终端时,此版本都会自动“使用 jabba”

jabba alias default 1.6.65

jabba 将所有内容保存在 ~/.jabba(在 Linux/Mac OS X 上)/%USERPROFILE%/.jabba(在 Windows 上)下。

于 2016-12-05T17:46:13.643 回答
5

您现在可以使用sdkman来安装和管理java.

sdk install java

http://sdkman.io/usage.html

于 2017-01-22T16:39:46.160 回答
2

jEnv用来管理我系统中的java环境。 http://www.jenv.be/

于 2016-04-15T15:13:15.200 回答