redhat-developer / redhat-developer/vscode-java

IntelliSense provided by this extension no longer work when the workspace includes `build.gradle`

Open
#2,682 8 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

content-assist Gradle
Dominant language
TypeScript
Stars
2.3k
Forks
546
Avg merge
20h 1m
Merged PRs (30d)
11

Description

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
  1. Clone this repo: https://github.com/Sage-Bionetworks/challenge-registry.git
  2. Checkout the commit 4e63ff1e150337882b680f05bf25c81bffa0fdfc
  3. Follow the README to setup the project
  4. Open a .java file > IntelliSense does not work
  5. Delete the file build.gradle
  6. Repeat Steps 3
  7. Open a .java file > 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

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the failure in the linked challenge-registry repository using the specified commit and environment, comparing IntelliSense with and without the workspace-root build.gradle file. Review the detailed logs linked from the issue and the Java extension behavior around workspace project detection; done means Java IntelliSense works while build.gradle remains present.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, vscode
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.