[jboss-dev] Scanning jars for package capabilities

Jaikiran Pai jpai at redhat.com
Thu Jun 18 08:58:21 EDT 2009


Resending with a zipped snapshot. Did not realize that the earlier html 
attachment was large.

I was just looking at the profiler output against AS trunk today and 
noticed that considerable amount of time is being spent in the 
AbstractClassLoaderDeployer.deploy which internally creates a 
classloader for deployers/deployments. Internally a 
VFSDeploymentClassLoaderPolicyModule goes on to determine the 
"capabilities" of each module. This include traversing the jar file(s) 
to find out what "packages" are contained. Attached is the profiler 
snapshot.

I was thinking whether we could reduce this time by having a INDEX.LIST 
file http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/jar.html#i (or 
something similar) which would list the packages available/exposed in a 
jar file (sample generated file attached for jboss-common-core.jar). We 
cannot enforce this on end user deployments but atleast the jars shipped 
by the server probably could include this? This probably will have its 
own issues in terms of  maintaining that list so that it does not become 
outdated. We could use the jar -i command to create the index files 
everytime a jar is generated, but again needs to be followed by each 
project.

Is this something that we should be looking into? Or are there any 
better ways of dealing with this?

-Jaikiran
-------------- next part --------------
A non-text attachment was scrubbed...
Name: AS trunk snapshot.zip
Type: application/zip
Size: 32028 bytes
Desc: not available
Url : http://lists.jboss.org/pipermail/jboss-development/attachments/20090618/0cc3eb19/attachment.zip 


More information about the jboss-development mailing list