felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Harsha Godugu (JIRA)" <j...@apache.org>
Subject [jira] Created: (FELIX-661) maven bundle plugin does not close the accessed fie /jar streams
Date Tue, 05 Aug 2008 22:58:44 GMT
maven bundle plugin does not close the accessed fie /jar streams

                 Key: FELIX-661
                 URL: https://issues.apache.org/jira/browse/FELIX-661
             Project: Felix
          Issue Type: Bug
          Components: Maven Bundle Plugin
    Affects Versions: maven-bundle-plugin-1.4.2
         Environment: maven 2
jdk 5 or 6 
any OS where JDK is supported
            Reporter: Harsha Godugu
            Priority: Blocker

Maven bundle plugin is doing the following.

i)  When someone (from a pom.xml)  uses this plug-in, to bundlize their project jars,  this
plugin  first opens  a jar file for reading. And then later after in some other method call,
it opens the SAME file for writing.  Basically it dynamically changes the content of the jar
for reading and writing.  

ii)  This plugin forgets to call the close() method on the file / zip/jar/ resource of  jdk
and aQute packages.

How to fix:

i)  Please call close() at places wherever your are trying to read and write ZipFile  JarFile
or aQute's  Analyzer , ZipResource , Jar class files from 
                  biz/aQute/bndlib/0.0.255/.. /OSGI-OPT/src/aQute/lib/osgi
    And also at 


ii) At    org/apache/felix/bundleplugin/BundlePlugin.java

         where  where "classpath" variable is actually an Array of Jar files that need to
closed upon task is done.
        Note that  the Jar here is from aQute and it has got resource map. So each Jar object
might have recursive resources. So, please walk through the map 
       and close each resource if it is  FileResource/ JarResource / ZipResource.

iii)   At    org/apache/felix/bundleplugin/BundlePlugin.java
       I also suspect the place in the same BundlePlugin.java,  where we  call unpackBundle(...)
and call  ManifestPlugin.writeManifest(... , ..)
       Please make sure the streams are closed.

-- A generic message.
We need this very urgently.  We appreciate your timely action.  Any comments, questions please
send it to me directly.
I can work with you to provide the fix and verify the fix.

Many thanks in advance.


This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message