redhat-developer / redhat-developer/vscode-java
can not set different jdk versions for different folder projects in the same workspace
未关闭
还没有人认领这个 Issue。
preferences
runtime
- 主要语言
- TypeScript
- 星标
- 2.3k
- 派生
- 547
- 平均合并
- 20 小时 1 分钟
- 30 天内合并 PR
- 11
描述
[In vscode, how to set different jdk versions for different folder projects in the same workspace]see this issue
Environment
- Operating System: macOS 12.4 (21F79)
- JDK version: 8 or 17
- Visual Studio Code version: 1.68.1 (Universal)
- Java extension version: Extension Pack for Java v0.24.0
Steps To Reproduce
- [step 1] Add two normal projects with two different JDK versions to the same workspace.
- [step 2] command+shift+p -> configure java runtime
- [step 3] set different jdk version。
- The java version is always automatically set to the same.
[Please attach a sample project reproducing the error]
Please attach logs
Current Result
configure java runtime png

Expected Result
Additional Informations
Developer: Toggle Developer Tools console log
Access to XMLHttpRequest at 'https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery' from origin 'vscode-file://vscode-app' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
workbench.desktop.main.js:597 ERR RequestService#request (browser) - error https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery Error: XHR failed
at XMLHttpRequest.v.onerror (vscode-file://vscode-app/Applications/Visual%20Studio%20Code.app/Contents/Resources/app/out/vs/workbench/workbench.desktop.main.js:83:27645)
marketplace.visualstudio.com/_apis/public/gallery/extensionquery:1 Failed to load resource: net::ERR_FAILED
workbench.desktop.main.js:71 [Extension Host] 6 Jul 13:29:14 - Proposed protocol extensions loaded!
workbench.desktop.main.js:597 ERR Connection got disposed.: Error: Connection got disposed.
at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1126161)
at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973103)
at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973291)
at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1046964)
at t (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:971405)
at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787)
at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548)
at Q (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1115300)
at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787)
at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548)
at g.fireClose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1139993)
at Socket.<anonymous> (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1140778)
at Socket.emit (node:events:390:28)
at Pipe.<anonymous> (node:net:687:12)
workbench.desktop.main.js:71 [Extension Host] rejected promise not handled within 1 second: Error: Connection got disposed.
I @ workbench.desktop.main.js:71
workbench.desktop.main.js:71 [Extension Host] stack trace: Error: Connection got disposed. at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1126161) at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973103) at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973291) at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1046964) at t (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:971405) at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787) at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548) at Q (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1115300) at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787) at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548) at g.fireClose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1139993) at Socket.<anonymous> (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1140778) at Socket.emit (node:events:390:28) at Pipe.<anonymous> (node:net:687:12)
I @ workbench.desktop.main.js:71
workbench.desktop.main.js:2693 [[object Object]]Connection got disposed.
$onExtensionRuntimeError @ workbench.desktop.main.js:2693
workbench.desktop.main.js:2693 Error: Connection got disposed.
at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1126161)
at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973103)
at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973291)
at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1046964)
at t (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:971405)
at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787)
at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548)
at Q (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1115300)
at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787)
at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548)
at g.fireClose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1139993)
at Socket.<anonymous> (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1140778)
at Socket.emit (node:events:390:28)
at Pipe.<anonymous> (node:net:687:12)
shift+command+u output-log(window)
[2022-07-06 13:29:11.639] [renderer1] [error] RequestService#request (browser) - error https://marketplace.visualstudio.com/_apis/public/gallery/extensionquery {}
[2022-07-06 13:29:14.774] [renderer1] [error] Connection got disposed.: Error: Connection got disposed.
at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1126161)
at Object.dispose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973103)
at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:973291)
at w.handleConnectionClosed (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1046964)
at t (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:971405)
at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787)
at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548)
at Q (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1115300)
at invoke (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1127787)
at s.fire (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1128548)
at g.fireClose (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1139993)
at Socket.<anonymous> (/Users/elewen/.vscode/extensions/redhat.java-1.8.0-darwin-x64/dist/extension.js:2:1140778)
at Socket.emit (node:events:390:28)
at Pipe.<anonymous> (node:net:687:12)
Java: Open Java Language Server log file
/Users/elewen/Library/Application Support/Code/User/workspaceStorage/675d040fc0c43fc966d08bd8b269c960/redhat.java/jdt_ws/.metadata/.log
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从 Configure Java Runtime 命令以及位于 workspaceStorage/.../redhat.java/jdt_ws/.metadata/.log 的附加 Java Language Server 日志开始。使用 JDK 8 和 17 在两个文件夹项目中重现该问题,然后验证每个项目是否保留其选定的 JDK,而不是两者都被设置为同一版本。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java, typescript
- 领域
- developer-experience
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100