-
Notifications
You must be signed in to change notification settings - Fork 917
Description
Apache NetBeans version
Apache NetBeans 24 release candidate
What happened
I have created a Spring Boot project on Spring Initializr and opened it both with Netbeans 22 and 24.
Syntax highlight works, syntax check, autocomplete, class import suggestion and some of other features don't.
I can run maven "spring-boot:run" from the goals and it starts the application.
The issue:
When I open a class file from the project I experience issues with lots of Netbeans functionality. Syntax highlight works, syntax check, autocomplete, class import suggestion and some of other features don't. I get the following exception:
java.lang.IllegalArgumentException: version can neither be null, empty nor blank
at org.apache.maven.artifact.ArtifactUtils.notBlank(ArtifactUtils.java:95)
at org.apache.maven.artifact.ArtifactUtils.toSnapshotVersion(ArtifactUtils.java:53)
at org.apache.maven.artifact.DefaultArtifact.setBaseVersionInternal(DefaultArtifact.java:354)
at org.apache.maven.artifact.DefaultArtifact.selectVersion(DefaultArtifact.java:443)
at org.apache.maven.artifact.DefaultArtifact.selectVersionFromNewRangeIfAvailable(DefaultArtifact.java:434)
at org.apache.maven.artifact.DefaultArtifact.<init>(DefaultArtifact.java:126)
at org.apache.maven.artifact.DefaultArtifact.<init>(DefaultArtifact.java:88)
at org.netbeans.modules.maven.api.PluginPropertyUtils.getPluginPathProperty(PluginPropertyUtils.java:839)
at org.netbeans.modules.maven.classpath.AnnotationProcClassPathImpl.getCompileArtifacts(AnnotationProcClassPathImpl.java:91)
at org.netbeans.modules.maven.classpath.AnnotationProcClassPathImpl.createPath(AnnotationProcClassPathImpl.java:66)
at org.netbeans.modules.maven.classpath.AbstractProjectClassPathImpl.getPath(AbstractProjectClassPathImpl.java:153)
at org.netbeans.modules.maven.classpath.AbstractProjectClassPathImpl.getResources(AbstractProjectClassPathImpl.java:144)
at org.netbeans.api.java.classpath.ClassPath.entries(ClassPath.java:363)
at org.netbeans.modules.maven.classpath.ClassPathProviderImpl$AnnotationPathSelector.getActiveClassPath(ClassPathProviderImpl.java:685)
at org.netbeans.spi.java.classpath.support.MuxClassPathImplementation.getActiveClassPath(MuxClassPathImplementation.java:156)
at org.netbeans.spi.java.classpath.support.MuxClassPathImplementation.getResources(MuxClassPathImplementation.java:89)
at org.netbeans.api.java.classpath.ClassPath.entries(ClassPath.java:363)
at org.netbeans.api.java.classpath.ClassPath.getRoots(ClassPath.java:248)
at org.netbeans.modules.java.source.indexing.APTUtils.listenOnProcessorPath(APTUtils.java:343)
at org.netbeans.modules.java.source.indexing.APTUtils.listen(APTUtils.java:329)
at org.netbeans.modules.java.source.indexing.APTUtils.create(APTUtils.java:234)
at org.netbeans.modules.java.source.indexing.APTUtils.get(APTUtils.java:165)
at org.netbeans.modules.java.source.parsing.JavacParser.createJavacTask(JavacParser.java:897)
at org.netbeans.modules.java.source.parsing.CompilationInfoImpl.getJavacTask(CompilationInfoImpl.java:460)
at org.netbeans.modules.java.source.parsing.CompilationInfoImpl.getJavacTask(CompilationInfoImpl.java:438)
at org.netbeans.modules.java.source.parsing.JavacParser.getResult(JavacParser.java:531)
at org.netbeans.modules.java.source.parsing.JavacParser.getResult(JavacParser.java:140)
at org.netbeans.modules.parsing.impl.TaskProcessor.callGetResult(TaskProcessor.java:608)
at org.netbeans.modules.parsing.impl.SourceCache.getResult(SourceCache.java:241)
at org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.run(TaskProcessor.java:775)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:288)
at org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.execute(TaskProcessor.java:702)
[catch] at org.netbeans.modules.parsing.impl.TaskProcessor$CompilationJob.run(TaskProcessor.java:663)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1403)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:287)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2018)
Language / Project Type / NetBeans Component
Java Maven Web application project from Spring Initializr sources
How to reproduce
Please create a Spring Boot project on Spring Initializr with the following settings:
Project: Maven
Language: Java
Spring Boot: 3.3.6
Packaging: War
Java: 17
Add a single dependency for Proof of Error: Lombok.
Download the project and open it either in Netbeans 22 or 24.
Did this work correctly in an earlier version?
No / Don't know
Operating System
Windows 11
JDK
Oracle JDK 17.0.11+7-LTS-207
Apache NetBeans packaging
Apache NetBeans provided installer
Anything else
The issue is 100% reproducible every time I open a source file from the downloaded project template.
java.lang.IllegalArgumentException: version can neither be null, empty nor blank
at org.apache.maven.artifact.ArtifactUtils.notBlank(ArtifactUtils.java:95)
at org.apache.maven.artifact.ArtifactUtils.toSnapshotVersion(ArtifactUtils.java:53)
at org.apache.maven.artifact.DefaultArtifact.setBaseVersionInternal(DefaultArtifact.java:354)
at org.apache.maven.artifact.DefaultArtifact.selectVersion(DefaultArtifact.java:443)
at org.apache.maven.artifact.DefaultArtifact.selectVersionFromNewRangeIfAvailable(DefaultArtifact.java:434)
at org.apache.maven.artifact.DefaultArtifact.<init>(DefaultArtifact.java:126)
at org.apache.maven.artifact.DefaultArtifact.<init>(DefaultArtifact.java:88)
at org.netbeans.modules.maven.api.PluginPropertyUtils.getPluginPathProperty(PluginPropertyUtils.java:839)
at org.netbeans.modules.maven.classpath.AnnotationProcClassPathImpl.getCompileArtifacts(AnnotationProcClassPathImpl.java:91)
at org.netbeans.modules.maven.classpath.AnnotationProcClassPathImpl.createPath(AnnotationProcClassPathImpl.java:66)
at org.netbeans.modules.maven.classpath.AbstractProjectClassPathImpl.getPath(AbstractProjectClassPathImpl.java:153)
at org.netbeans.modules.maven.classpath.AbstractProjectClassPathImpl.getResources(AbstractProjectClassPathImpl.java:144)
at org.netbeans.api.java.classpath.ClassPath.entries(ClassPath.java:363)
at org.netbeans.modules.maven.classpath.ClassPathProviderImpl$AnnotationPathSelector.getActiveClassPath(ClassPathProviderImpl.java:685)
at org.netbeans.spi.java.classpath.support.MuxClassPathImplementation.getActiveClassPath(MuxClassPathImplementation.java:156)
at org.netbeans.spi.java.classpath.support.MuxClassPathImplementation.getResources(MuxClassPathImplementation.java:89)
at org.netbeans.api.java.classpath.ClassPath.entries(ClassPath.java:363)
at org.netbeans.api.java.classpath.ClassPath.getRoots(ClassPath.java:248)
at org.netbeans.modules.java.source.indexing.APTUtils.listenOnProcessorPath(APTUtils.java:343)
at org.netbeans.modules.java.source.indexing.APTUtils.listen(APTUtils.java:329)
at org.netbeans.modules.java.source.indexing.APTUtils.create(APTUtils.java:234)
at org.netbeans.modules.java.source.indexing.APTUtils.get(APTUtils.java:165)
at org.netbeans.modules.java.source.parsing.JavacParser.createJavacTask(JavacParser.java:897)
at org.netbeans.modules.java.source.parsing.CompilationInfoImpl.getJavacTask(CompilationInfoImpl.java:460)
at org.netbeans.modules.java.source.parsing.CompilationInfoImpl.getJavacTask(CompilationInfoImpl.java:438)
at org.netbeans.modules.java.source.parsing.JavacParser.getResult(JavacParser.java:531)
at org.netbeans.modules.java.source.parsing.JavacParser.getResult(JavacParser.java:140)
at org.netbeans.modules.parsing.impl.TaskProcessor.callGetResult(TaskProcessor.java:608)
at org.netbeans.modules.parsing.impl.SourceCache.getResult(SourceCache.java:241)
at org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.run(TaskProcessor.java:775)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:288)
at org.netbeans.modules.parsing.impl.TaskProcessor$RequestPerformer.execute(TaskProcessor.java:702)
[catch] at org.netbeans.modules.parsing.impl.TaskProcessor$CompilationJob.run(TaskProcessor.java:663)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:1403)
at org.netbeans.modules.openide.util.GlobalLookup.execute(GlobalLookup.java:45)
at org.openide.util.lookup.Lookups.executeWith(Lookups.java:287)
at org.openide.util.RequestProcessor$Processor.run(RequestProcessor.java:2018)
Are you willing to submit a pull request?
No