redhat-developer / redhat-developer/vscode-java
IntelliSense provided by this extension no longer work when the workspace includes `build.gradle`
还没有人认领这个 Issue。
- 主要语言
- TypeScript
- 星标
- 2.3k
- 派生
- 547
- 平均合并
- 20 小时 1 分钟
- 30 天内合并 PR
- 11
描述
My team is developing in an Nx monorepo with VS Code where apps and libraries are listed in the folder apps/ and libs. Some of our apps and libs are in Java. We installed the Extension Pack for Java, which include this extension (Language Support for Java(TM) by Red Hat). Java projects are built with either Maven or Gradle. In this context, this VS Code extension works great as language support for Java. For example, IntelliSense works properly in VS Code for Java files.
I observed that this extension breaks when placing the file build.gradle in the workspace root folder. By breaking, I mean that IntelliSense is no longer working. See this issue for more detailed information and logs. The issue is related to the presence of the file build.gradle as an empty file still breaks the language support. Having a workspace-level build.gradle is a standard for multi-project build.
The expected behavior is that this VS Code extension should work fine in the context of multi-project build with Gradle.
Environment
- Operating System: linux x64 (Debian 11)
- JDK version: 17.0.4
- Visual Studio Code version: 1.71.2
- Java extension version: 1.10.0
Steps To Reproduce
- Clone this repo: https://github.com/Sage-Bionetworks/challenge-registry.git
- Checkout the commit 4e63ff1e150337882b680f05bf25c81bffa0fdfc
- Follow the README to setup the project
- Open a
.javafile > IntelliSense does not work - Delete the file
build.gradle - Repeat Steps 3
- Open a
.javafile > IntelliSense works
Detailed logs can be found here.
Current Result
IntelliSense does not work in Java files. For example, no tooltip is displayed in VS Code when hovering on an import statement.
Expected Result
IntelliSense should work in Java files.
Additional Informations
$ nx report
> NX Report complete - copy this into the issue template
Node : 16.17.0
OS : linux x64
yarn : 3.2.2
nx : 14.5.4
@nrwl/angular : 14.5.4
@nrwl/cypress : 14.5.4
@nrwl/detox : Not Found
@nrwl/devkit : 14.5.4
@nrwl/eslint-plugin-nx : 14.5.4
@nrwl/express : Not Found
@nrwl/jest : 14.5.4
@nrwl/js : 14.5.4
@nrwl/linter : 14.5.4
@nrwl/nest : Not Found
@nrwl/next : Not Found
@nrwl/node : 14.5.4
@nrwl/nx-cloud : 14.3.0
@nrwl/nx-plugin : 14.5.4
@nrwl/react : Not Found
@nrwl/react-native : Not Found
@nrwl/schematics : Not Found
@nrwl/storybook : 14.5.4
@nrwl/web : 14.5.4
@nrwl/workspace : 14.5.4
typescript : 4.7.4
---------------------------------------
Community plugins:
@nguniversal/express-engine: 14.2.0
@nguniversal/builders: 14.2.0
@nx-tools/nx-docker: 2.3.0
@nxrocks/nx-spring-boot: 5.0.2
$ code --list-extensions --show-versions
Extensions installed on Dev Container: Challenge @ ssh://devcontainers-ssm:
1000ch.svgo@2.8.1
Angular.ng-template@14.2.0
dbaeumer.vscode-eslint@2.2.6
emeraldwalk.RunOnSave@0.2.0
esbenp.prettier-vscode@9.8.0
firsttris.vscode-jest-runner@0.4.56
GabrielBB.vscode-lombok@1.0.1
GitHub.vscode-pull-request-github@0.50.0
humao.rest-client@0.25.1
mhutchie.git-graph@1.30.0
mongodb.mongodb-vscode@0.9.3
ms-azuretools.vscode-docker@1.22.1
ms-python.python@2022.14.0
ms-python.vscode-pylance@2022.9.20
ms-toolsai.jupyter@2022.8.1002431955
ms-toolsai.jupyter-keymap@1.0.0
ms-toolsai.jupyter-renderers@1.0.9
mtxr.sqltools@0.25.1
mtxr.sqltools-driver-mysql@0.4.0
mtxr.sqltools-driver-pg@0.3.0
nrwl.angular-console@17.22.0
Pivotal.vscode-boot-dev-pack@0.1.0
Pivotal.vscode-spring-boot@1.39.0
redhat.java@1.10.0
richardwillis.vscode-spotless-gradle@1.2.1
ritwickdey.LiveServer@5.7.9
shengchen.vscode-checkstyle@1.4.1
stkb.rewrap@1.16.3
VisualStudioExptTeam.vscodeintellicode@1.2.27
vscjava.vscode-gradle@3.12.4
vscjava.vscode-java-debug@0.44.0
vscjava.vscode-java-dependency@0.21.0
vscjava.vscode-java-pack@0.25.1
vscjava.vscode-java-test@0.37.1
vscjava.vscode-maven@0.38.0
vscjava.vscode-spring-boot-dashboard@0.7.0
vscjava.vscode-spring-initializr@0.11.0
webhint.vscode-webhint@2.1.3
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
使用指定的提交和环境,在链接的 challenge-registry 仓库中重现该故障,并比较 workspace 根目录中存在和不存在 build.gradle 文件时的 IntelliSense。查看 issue 中链接的详细日志,以及 Java extension 在 workspace 项目检测方面的行为;当 build.gradle 仍然存在时 Java IntelliSense 能够正常工作,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java, vscode
- 领域
- developer-experience, tooling
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100