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.
Summary: | java.io.FileNotFoundException: D:\dev\epc\epclib\nblibraries-private.properties (Le processus ne peut pas acc�der au fichier car ce fichier est utilis� par un autre processus) | ||
---|---|---|---|
Product: | projects | Reporter: | ymajoros <ymajoros> |
Component: | Ant Project | Assignee: | Milan Kubec <mkubec> |
Status: | RESOLVED FIXED | ||
Severity: | blocker | CC: | junqueira_raphael |
Priority: | P3 | ||
Version: | 6.x | ||
Hardware: | All | ||
OS: | All | ||
URL: | http://statistics.netbeans.org/exceptions/detail.do?id=79073 | ||
Issue Type: | DEFECT | Exception Reporter: | 79073 |
Attachments: |
stacktrace
diff another version of diff |
Description
ymajoros
2009-08-14 13:01:48 UTC
Created attachment 86239 [details]
stacktrace
This issue already has 14 duplicates see http://statistics.netbeans.org/exceptions/detail.do?id=79073 *** Issue 172096 has been marked as a duplicate of this issue. *** Created attachment 88280 [details]
diff
Jesse, could you review the diff, please. Thanks. -load-private-libraries, rather than -init-libraries, should express the dependency on -pre-init-libraries. The diff won't work if there is more than one <definitions>. (This is why I did not just do the equivalent of your patch when initially writing this!) You can create multiple copies of -pre-init-libraries, private.properties.available, and -load-private-libraries parametrized by {position()}. Good XSLT practice I guess. Don't forget that several project types have the same code: j2ee.clientproject/src/org/netbeans/modules/j2ee/clientproject/resources/build-impl.xsl j2ee.earproject/src/org/netbeans/modules/j2ee/earproject/resources/build-impl.xsl j2ee.ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/resources/build-impl.xsl javacard.project/src/org/netbeans/modules/javacard/resources/build-impl.xsl java.j2seproject/src/org/netbeans/modules/java/j2seproject/resources/build-impl.xsl web.project/src/org/netbeans/modules/web/project/resources/build-impl.xsl contrib/scala.project/src/org/netbeans/modules/scala/project/resources/build-impl.xsl Hmm, I had bad feeling from the code too, that's why I asked for review. But I'm wondering why there was for-each iteration when xsd file says: <xsd:element name="libraries"> <xsd:complexType> <xsd:sequence> <xsd:element name="definitions" minOccurs="0" maxOccurs="1" type="xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> Really all those projects support sharable libraries? I was unaware that <definitions> specifies maxOccurs="1". Perhaps this was added after I ceased to work on sharable libraries (but the for-each was never updated). If each project type says there can be only one <definitions>, then you could dispense with for-each and use a simple xsl:choose depending on whether it exists or not. "Really all those projects support sharable libraries?" - javacard was a false match. The others seem to. Check for yourself. Created attachment 88334 [details]
another version of diff
Jesse, please could you review new version of the patch? I'm just not sure about use of position() now when there is no iteration. Well if there is only one <definitions> then position() would by definition always be 1, so ".{position()}" can be deleted throughout this block. As a matter of style I would put -load-private-libraries between -pre-init-libraries and -init-libraries, to reflect the execution order. BTW whoever defined <xsd:element name="definitions" minOccurs="0" maxOccurs="1" type="xsd:string"/> apparently did not realize that if there can be only one of them, then there is no purpose in having this subelement at all, and you could just write <xsd:element name="libraries" type="xsd:string"/> Too late now. I suppose if we ever want to support >1 <definitions> we can do so compatibly. Jesse, should also spec versions for affected modules be upgraded? You can increment spec versions if you like. They were just upgraded after 6.8 beta was branched, so the only people who would be affected would be those who just downloaded a dev build and are now looking for updates on dev AU. Fixed for j2ee.clientproject/src/org/netbeans/modules/j2ee/clientproject/resources/build-impl.xsl j2ee.earproject/src/org/netbeans/modules/j2ee/earproject/resources/build-impl.xsl j2ee.ejbjarproject/src/org/netbeans/modules/j2ee/ejbjarproject/resources/build-impl.xsl java.j2seproject/src/org/netbeans/modules/java/j2seproject/resources/build-impl.xsl web.project/src/org/netbeans/modules/web/project/resources/build-impl.xsl http://hg.netbeans.org/core-main/rev/90a9807244a0 I've filed issue against scala support: http://www.netbeans.org/issues/show_bug.cgi?id=173371 Integrated into 'main-golden', will be available in build *200910010513* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main-golden/rev/90a9807244a0 User: Milan Kubec <mkubec@netbeans.org> Log: #170370: private shared libraries will be loaded only when prop file exists *** Bug 177694 has been marked as a duplicate of this bug. *** |