Visual Studio Code - Java - Import Errors and More

JavaVisual Studio-Code

Java Problem Overview


Just starting working on an existing project at work and wanted to use Visual Studio Code as my IDE (I have used it for a recent Rails project and loved it, so wanted to try with Java).

However, whenever I try to open one of the projects I receive a ton of different errors including:

  • When importing java.io, java.util, or anything similar, the error: >"The import of java.io (or java.util) cannot be resolved"

  • Existing classes have an error: >"The implicit super constructor is undefined for default constructor. Must define explicit constructor"

  • Other random "cannot resolve to a type" errors.

All of these seem to stem from some sort of setting error I have with VS Code but can seem to find what it is. I have already uninstalled and reinstalled the RedHat plug-in that enables the Java language for VS Code.

I have tried setting the java_home setting in the extension to the direct location of the install but that didn't work. Tried uninstalling and reinstalling java and that also didn't work.

My operating specs are as follows:

  • OS: macOS Sierra

  • VS Code version 1.15.1

  • JDK version 1.8.0.144

Any idea on what may be causing this? Do you think it may be an error in how I have VS Code set up or if it's an error (or rather incompatibility) with how the existing project is set up?

Java Solutions


Solution 1 - Java

I ran into a similar issue. The solution was to remove everything from VS Code's workspace storage directory, which was located at $HOME/Library/Application Support/Code/User/workspaceStorage/.

I found this solution here: https://github.com/redhat-developer/vscode-java/wiki/Troubleshooting#clean-the-workspace-directory

Update: This can now be done from within VS Code as of Language Support for Java(TM) by Red Hat Version 0.33.0. Open the command palette and type "java clean" (see official description in link).

Solution 2 - Java

As already mentioned previously, you require to clean the project, but that is a bit difficult thing because every folder is a Guid, and you do not know which one to clear, thus requiring you to delete everything. Starting with 0.33.0 version of the plugin you can automatically do that from within the IDE as well, use CTRL + Shift + P and type, java clean, and IDE will show you the suggestion tip for, Java: Clean the Java language server workspace. Upon selection, agree and restart the IDE. It will clean the language server workspace for you.

Another approach can be, the Maven tools within the IDE. If you have this plugin installed, you can use the side bar and utilize the Maven project helper options to perform actions like, clean, install, and package etc. For example, here is the project I am having and the options this shows,

enter image description here

That can be used, graphically, to manage your Maven-based projects. Also, this would work with the Java Extension Pack, not sure yet as to how it would behave with other extensions.

Solution 3 - Java

For me: CMD + Shift + P Then type "Java: Clean Java language Server Workspace"

Note: This will reload/restart vscode as well.

Update: This appears to not fix it anymore for me. In my case I am using a gradle project, and needed to set the rootProject.name in the settings.gradle to be the same as the folder name that the project is in.

Solution 4 - Java

I faced this issue after creating a whole Java project in one computer and then trying to run it on another computer.

After doing everything said in the other answers, what really made VS Code compile was to open each single project java file in VS Code and save it (a simple Ctrl + S). Maybe there is a simpler way of doing it, but that is what worked for me and I hope this helps anyone stuck in this issue.

Solution 5 - Java

I found another simple trick at least to get rid of "cannot be resolved to a type" errors which were coming from older workspaces and wrong project files I guess?. I just ran an empty main(), with the body commented out, while still keeping my local package / import commands at the start - no errors. After commenting in again, the project compiled without errors. Perhaps this refreshing effect might also help in this context?

Solution 6 - Java

Press ctrl+shift+p then search 'java clean' and click 'java: clean java language server workspace' then click restart IDE.

Solution 7 - Java

I had to clean this folder to get it working on Windows

%APPDATA%\code\Local Storage

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionReed HermesView Question on Stackoverflow
Solution 1 - JavatoreyhickmanView Answer on Stackoverflow
Solution 2 - JavaAfzaal Ahmad ZeeshanView Answer on Stackoverflow
Solution 3 - JavaTigerBearView Answer on Stackoverflow
Solution 4 - JavaLucianoBAFView Answer on Stackoverflow
Solution 5 - Javaquestionto42standswithUkraineView Answer on Stackoverflow
Solution 6 - JavaChetan GuptaView Answer on Stackoverflow
Solution 7 - JavaArjun ShettyView Answer on Stackoverflow