![]() | 1 Goooooos 86 天前 via Android scoop |
2 Ghostisbored OP @Goooooos 谢谢 我瞧瞧 |
3 yeqiling 86 天前 via Android |
![]() | 4 qilme 86 天前 via Android 在 git for windows 或者 msys2 的 bash 环境里使用 sdkman ,这样可以在本机安装 jdk |
5 dcsuibian 86 天前 ![]() 下载 8 、11 、17 、21 的 zip 版本的 jdk ,然后解压成对应的文件夹。JAVA_HOME 配的 21 的,因为主用 21 。 一般用不着切换,真要切换的话,在 IDEA 的 Project Structure 里面改一下就好了吧,而且我记得 IDEA 会解析 pom.xml 来选择 jdk 版本的 相比于 Python 和 Node.js ,我感觉 jdk 版本不太需要管理 |
6 HENQIGUAI 85 天前 |
![]() | 7 jasonkayzk 85 天前 ![]() |
![]() | 8 Foxkeh 85 天前 这个不是在 IDE 里面手动指定就可以了么 |
![]() | 9 Goooooos 85 天前 ![]() @jasonkayzk #7 兄弟,看标题,我看完 readme 都是说 macos 的 |
![]() | 10 Goooooos 85 天前 OP 发帖子前几个小时,我刚问完 gemini ,给出的方案中,选了 scoop 以下命令在 powershell 中执行 1. Set-ExecutionPolicy RemoteSigned -Scope CurrentUser 2. Invoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression 3. scoop bucket add java 4. scoop search openjdk 5. scoop install openjdk17 6. scoop install openjdk21 7. scoop reset openjdk17 8. scoop reset openjdk21 |
11 qinfengge 85 天前 无脑 scoop ,现在在用,一条命令安装,一条命令切换,爽死了 |
![]() | 12 chuunshii 85 天前 scoop |
![]() | 13 guyeu 85 天前 以 Java 的向前兼容性,有什么场景需要切换呢? |
![]() | 14 jasonkayzk 85 天前 @Goooooos #9 不好意思,我以为 jenv 是跨平台的,我的。 ![]() |
15 Ghostisbored OP @guyeu 我一般开发其他语言 比如 ts 、python 我的方式是在 wsl 中 用对应的多版本管理工具 但是本身的编辑器是在 windos 这样很方便 但是 java 目前发现我上面说的那些问题 特别是在新建项目 导入一些开源项目的时候遇到很多不同的版本 我们是以 java8 为主可能要进行一些兼容上的修改 |
16 Ghostisbored OP 多谢大家的推荐 经过我的尝试我也使用 scoop 了 结合 @Goooooos 兄弟的命令 我在 2 条说明 如果出现类似 Couldn't find manifest for 'temurin8-jdk' 可以试试这个命令 :scoop bucket add java https://github.com/ScoopInstaller/Java 如果你以前已经安装了 jdk 因为设置了系统变量 但是 scoop 改变的是用户变量 导致切换到 scoop 版本 不能生效 可以删除以前的系统变量全部由 scoop 管理 |
![]() | 17 archean 85 天前 可以看下 mise 是不是可以做到?现在我遇到任何版本管理需求,都优先考虑它。 https://mise.jdx.dev/ |
18 Lockroach 85 天前 如果强调管理的话,感觉 docker 和 dev container 应该不错 |
19 lvlongxiang199 85 天前 |
20 Binwalker 85 天前 mise 秒杀所有 |
![]() | 21 chendy 85 天前 十二年老懒狗选择直接 idea 安装配置,反正离开 IDE 也不写 java |
![]() | 22 wxyrrcj 85 天前 vfox +1 |
23 Ghostisbored OP @chendy 已经变得有强迫症了 不弄得舒舒服服得写代码都不爽 |
![]() | 24 Bamboodu 85 天前 其实没必要折腾,都是切换 jdk 在 idea 里面切,平时命令行运行 java 程序的可能性几乎为 0 |
25 Need4more 85 天前 1. idea 和 vscode 都带了 java 的安装器 2. scoop |
![]() | 27 xrxb 85 天前 万年 java8 不需要切换 |
![]() | 28 Belmode 85 天前 在开发机器上,从来不把 java 注册到环境变量中,直接在开发工具中配置一下不就好了 |
![]() | 30 inhzus 85 天前 scoop / mise |
31 edsion1107 85 天前 用 mise 吧,生态感觉已经非常完善了。 vfox 总是大改,用起来不敢放心升级,而且 JavaToolchain 的自动发现也不支持: https://docs.gradle.org/current/userguide/toolchains.html#sec:auto_detection |
32 edsion1107 85 天前 还有一点,mise 的维护非常积极和及时,我之前反馈的 BUG ,睡一觉起来就发现已经修复并上线了。 |
33 laminux29 85 天前 你就不应该在一个 OS 里安装不同的 jdk 、Python 等等。 现在有虚拟化技术了,每个虚拟机,安装一个版本,这不难吧? |
34 CodeCodeStudy 84 天前 不需要啊,直接在脚本里设置环境变量 JAVA_HOME 和 PATH 就好了啊 |
35 Ghostisbored OP @laminux29 我一般用 nvm pyenv sdkman 是一样的 基本不会污染的 要维护一些老项目 新的项目会尝试新版本 |
36 Ghostisbored OP @Belmode 这可能是个办法 让 idea 自己去发现就好了 |
![]() | 37 dongdong12345 84 天前 @lvlongxiang199 一样,本地不需要配环境变量。都是用 idea 去管理 |
![]() | 38 uselesswater 73 天前 via Android jdk 都用解压版本,没有什么管理的难度,想用哪个就切换就行了,一定要配置环境变量,那就配置主用的一个。其他的不用配置,其他的配置了也没用,他是根据在 path 里面的顺序从上到下读取,先读到那个,就是用哪个版本,实在需要再更换环境变量。在 ide 里面切换 jdk 版本,没有任何难度。你说的路径问题,对不起,没遇到过,切换的时候是不是没有正确切换。 |