This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 183803 - sibling == null from OutputFileManager.getFileForOutput
Summary: sibling == null from OutputFileManager.getFileForOutput
Status: RESOLVED FIXED
Alias: None
Product: java
Classification: Unclassified
Component: Source (show other bugs)
Version: 6.x
Hardware: PC Linux
: P2 normal (vote)
Assignee: Tomas Zezula
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-04-09 18:28 UTC by Jesse Glick
Modified: 2010-04-13 17:31 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
More complete stack trace (4.83 KB, text/plain)
2010-04-12 14:55 UTC, Jesse Glick
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jesse Glick 2010-04-09 18:28:11 UTC
Printed during CP scanning in 100409. gFOO Javadoc says it is OK for sibling to be null, that it is only a hint.

INFO [com.sun.tools.javac.processing.JavacProcessingEnvironment]: Annotation processing error:
java.lang.IllegalArgumentException: sibling == null
        at org.netbeans.modules.java.source.parsing.OutputFileManager.getFileForOutput(OutputFileManager.java:183)
        at org.netbeans.modules.java.source.parsing.ProxyFileManager.getFileForOutput(ProxyFileManager.java:221)
        at com.sun.tools.javac.processing.JavacFiler.getResource(JavacFiler.java:444)
        at org.openide.filesystems.annotations.LayerGeneratingProcessor.layerDocument(LayerGeneratingProcessor.java:218)
        at org.openide.filesystems.annotations.LayerGeneratingProcessor.layer(LayerGeneratingProcessor.java:203)
        at org.netbeans.modules.project.uiapi.CompositeCategoryProviderAnnotationProcessor.handleFolder(CompositeCategoryProviderAnnotationProcessor.java:110)
Comment 1 Jan Lahoda 2010-04-12 07:04:26 UTC
Knowing the sibling is not really optional for us. There are mechanisms to get the sibling even if it is not passed as a parameter. The rest of the exception will probably be needed to find out why that did not work in this case.
Comment 2 Tomas Zezula 2010-04-12 08:59:12 UTC
As Honza mentioned above. The sibling is required for projects with 2 or more source roots. The java source maintains separated caches for each source root (adding removing of root is cheaper).
And only way how to find out to which cache root the class file belongs is the sibling.
Comment 3 Tomas Zezula 2010-04-12 08:59:40 UTC
More important increasing priority.
Comment 4 Jesse Glick 2010-04-12 14:55:09 UTC
Created attachment 97103 [details]
More complete stack trace
Comment 5 Tomas Zezula 2010-04-12 16:00:17 UTC
Fixed in jet-main 5ab135061577
Comment 6 Quality Engineering 2010-04-13 17:31:11 UTC
Integrated into 'main-golden', will be available in build *201004131450* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress)
Changeset: http://hg.netbeans.org/main/rev/5ab135061577
User: Tomas Zezula <tzezula@netbeans.org>
Log: #183803:sibling == null from OutputFileManager.getFileForOutput