jenv: version `1.8‘ is not installed

博客指出使用Java时提示版本未安装,使用Atom时提示找不到java rt.jar、Java语言服务器意外停止。给出的解决办法是重置全局Java版本,编辑主目录下的.java - version文件为1.8.0.192,还提到该错误不影响Atom使用,并给出相关参考链接。

when to use java it prompts   jenv: version `1.8' is not installed, the details are as follows:

 % java -version
jenv: version `1.8' is not installed
jenv: version `1.8' is not installed
 % jenv exec bash
jenv: version `1.8' is not installed
jenv: version `1.8' is not installed
% jenv version
jenv: version `1.8' is not installed
 (set by /Users/[YourName]/OnJava8-Examples/.java-version)

when to use Atom, it promts:

autocomplete-java: java rt.jar not found

IDE-Java language server stopped unexpectedly.

Error: A fatal exception has occurred. Program will exit. Unrecognized option: --add-modules=ALL-SYSTEM Error: Could not create the Java Virtual Machine. Error: A fatal exception has occurred. Program will exit. [1]

 

The solution is 

A. reset your installed global java verion

% jenv global 1.8.0.192

B. edit your .java-version file to 1.8.0.192 in your home directory.

 

[1] error does not affect  Atom usage.

references:

1. https://stackoverflow.com/questions/41992874/i-install-java7-and-java8-using-jenv-then-run-jenv-global-oracle64-1-8-0-121 

2. https://blog.youkuaiyun.com/wangbingfengf98/article/details/85108338

3. https://github.com/jenv/jenv/issues/44

 

对于 Flutter 依赖有 11 个包不兼容新版本以及 jenv 中 Java 17 版本未安装的问题,可以按以下方法解决。 ### 解决 Flutter 依赖包不兼容问题 - **更新依赖包**:在项目的 `pubspec.yaml` 文件中,尝试更新那些不兼容的依赖包到最新的稳定版本。可以手动修改版本号,然后在终端中运行 `flutter pub get` 来获取新的依赖。示例如下: ```yaml dependencies: package_name: ^new_version ``` ```bash flutter pub get ``` - **指定兼容版本**:如果更新到最新版本仍然不兼容,可以查阅依赖包的文档,找到与当前 Flutter 版本兼容的特定版本,并在 `pubspec.yaml` 中指定该版本。 - **临时忽略警告**:在某些情况下,如果这些不兼容的警告不影响项目的正常运行,可以暂时忽略它们。但这只是临时解决方案,建议在后续有时间时还是要解决兼容性问题。 ### 安装 Java 17 到 jenv - **安装 Java 17**:使用 Homebrew 安装 Java 17,命令如下: ```bash brew install openjdk@17 ``` - **将 Java 17 添加到 jenv**:安装完成后,需要将 Java 17 添加到 jenv 中,使其可以被 jenv 管理。首先找到 Java 17 的安装路径,通常为 `/usr/local/opt/openjdk@17`,然后执行以下命令: ```bash jenv add /usr/local/opt/openjdk@17 ``` - **设置全局或局部 Java 版本**:可以将 Java 17 设置为全局版本,也可以为当前项目设置局部版本。设置全局版本的命令如下: ```bash jenv global 17 ``` 设置局部版本的命令如下: ```bash jenv local 17 ``` ### 确保 AGP 与 Gradle、JDK 版本匹配 在解决依赖包和 Java 版本问题后,还需要确保 AGP(Android Gradle Plugin)与 Gradle、JDK 版本严格匹配。查看 `android/build.gradle` 文件中的 `dependencies.classpath` 来确定当前的 AGP 版本,根据 AGP 版本要求使用相应的 JDK 版本,AGP 7.0+ 需 JDK 11+,AGP 8.0+ 需 JDK 17+ [^1]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值