redhat-developer / vscode-java

Java Language Support for Visual Studio Code
Eclipse Public License 2.0
2.07k stars 433 forks source link

Bug: Quick fix does not suggest basic imports as a solution #3715

Open Biyakuga opened 2 months ago

Biyakuga commented 2 months ago

[provide a description of the issue]

Environment

Operating System: Windows11 JDK version: 17 Visual Studio Code version: 1.88 Java extension version: 1.29

Steps To Reproduce
  1. Create a java file and try to create List/Set/Map
  2. Error no import available from quick fix

[Please attach a sample project reproducing the error] Please attach logs

image

Current Result

Like in the image above I have to manually add the import to fix the problem

Expected Result

Quick fix should give me imports as a suggestion

snjeza commented 2 months ago

I can't reproduce the issue. @Biyakuga Could you show your extensions and settings.json?

Biyakuga commented 2 months ago

I can't reproduce the issue. @Biyakuga Could you show your extensions and settings.json? Sure here is my settings.json: image

Here is my extensions list: image image

anthonyvdotbe commented 2 months ago

I'm having the same issue (also with classes outside java.util, like e.g. java.time.format.DateTimeFormatter). This is with the pre-release version (v1.33.2024072008) and the following settings:

"java.autobuild.enabled": false,
"java.codeGeneration.hashCodeEquals.useJava7Objects": true,
"java.codeGeneration.toString.codeStyle": "STRING_FORMAT",
"java.codeGeneration.useBlocks": true,
"java.completion.favoriteStaticMembers": [
    "java.lang.System.Logger.Level.*",
    "java.nio.charset.StandardCharsets.*",
    "java.util.Spliterator.*",
    "java.util.function.Predicate.*",
    "java.util.stream.Collectors.*"
],
"java.completion.guessMethodArguments": true,
"java.configuration.updateBuildConfiguration": "automatic",
"java.format.comments.enabled": false,
"java.inlayHints.parameterNames.enabled": "none",
"java.signatureHelp.enabled": true,
fbricon commented 2 months ago

I've had this issue yesterday. Java: Clean Java Language Server Workspace fixed it for me. There's definitely something fishy here we need to fix.

magicalmuggle commented 1 month ago

I have encountered the same issue. One way to reproduce it, although inconsistently, is by deleting the import statement for the List class, then closing the window and reopening it. After the project loads completely, press Ctrl + .. By repeating this process, the quick fix sometimes fails to suggest the necessary import for the List class.