Hi.

This may sound like a heresy, but I tried to build some Netbeans components 
with Eclipse. Namely, openide.util.ui/test and its dependencies. Almost 
everything works except
Eclipse can't generate Bundle.java because of the error thrown by an annotation 
processor used.

The error is "Unsupported location: SOURCE_PATH" and the reason is that it 
expects IOException while Eclipse throws IllegalArgumentException. The fix is 
trivial: catch a
more generic exception.

At least, NbBundleProcessor and AbstractServiceProviderProcessor are affected.

https://github.com/apache/incubator-netbeans/blob/15bc442a91fa2be81488725b15c61386bf1d0b9b/openide.util.lookup/src/org/openide/util/lookup/implspi/AbstractServiceProviderProcessor.java#L203

https://github.com/apache/incubator-netbeans/blob/15bc442a91fa2be81488725b15c61386bf1d0b9b/openide.util.ui/src/org/netbeans/modules/openide/util/NbBundleProcessor.java#L156

https://github.com/apache/incubator-netbeans/blob/15bc442a91fa2be81488725b15c61386bf1d0b9b/openide.util/src/org/netbeans/modules/openide/util/NbBundleProcessor.java#L156


I faced this issue on Oxygen 2 and on some older Eclipse:

    eclipse.buildId=4.4.2.M20150204-1700
    java.version=1.8.0_40
    java.vendor=Oracle Corporation
    BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_US
    Framework arguments:  -product org.eclipse.epp.package.jee.product
    Command-line arguments:  -os win32 -ws win32 -arch x86_64 -product 
org.eclipse.epp.package.jee.product -data c:\keep\eclipse\4.4\workspace
   
    org.eclipse.jdt.apt.pluggable.core
    Error
    Mon Feb 26 12:22:16 MSK 2018
    Exception thrown by Java annotation processor 
org.netbeans.modules.openide.util.NbBundleProcessor@15df658b
   
    java.lang.IllegalArgumentException: Unsupported location: SOURCE_PATH
        at 
org.eclipse.jdt.internal.apt.pluggable.core.filer.IdeFilerImpl.getFileFromOutputLocation(IdeFilerImpl.java:188)
        at 
org.eclipse.jdt.internal.apt.pluggable.core.filer.IdeFilerImpl.getResource(IdeFilerImpl.java:154)
        at 
org.netbeans.modules.openide.util.NbBundleProcessor.process(NbBundleProcessor.java:173)
        at 
org.eclipse.jdt.internal.compiler.apt.dispatch.RoundDispatcher.handleProcessor(RoundDispatcher.java:139)
        at 
org.eclipse.jdt.internal.compiler.apt.dispatch.RoundDispatcher.round(RoundDispatcher.java:121)
        at 
org.eclipse.jdt.internal.compiler.apt.dispatch.BaseAnnotationProcessorManager.processAnnotations(BaseAnnotationProcessorManager.java:159)
        at 
org.eclipse.jdt.internal.apt.pluggable.core.dispatch.IdeAnnotationProcessorManager.processAnnotations(IdeAnnotationProcessorManager.java:134)
        at 
org.eclipse.jdt.internal.compiler.Compiler.processAnnotations(Compiler.java:818)
        at org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:434)
        at 
org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:367)
        at 
org.eclipse.jdt.internal.core.builder.BatchImageBuilder.compile(BatchImageBuilder.java:179)
        at 
org.eclipse.jdt.internal.core.builder.AbstractImageBuilder.compile(AbstractImageBuilder.java:304)
        at 
org.eclipse.jdt.internal.core.builder.BatchImageBuilder.build(BatchImageBuilder.java:61)
        at 
org.eclipse.jdt.internal.core.builder.JavaBuilder.buildAll(JavaBuilder.java:256)
        at 
org.eclipse.jdt.internal.core.builder.JavaBuilder.build(JavaBuilder.java:175)
        at 
org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:734)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at 
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:206)
        at 
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:246)
        at 
org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:299)
        at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
        at 
org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:302)
        at 
org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:358)
        at 
org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:381)
        at 
org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:143)
        at 
org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:241)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54)

Reply via email to