Difference between revisions of "JarProcessor Options"

From Eclipsepedia

Jump to: navigation, search
(META-INF/eclipse.inf properties)
Line 1: Line 1:
 +
Note the following page refers to options that are introduced to the jar processor with [https://bugs.eclipse.org/bugs/show_bug.cgi?id=159028 bug 159028].  A Jar containing these changes is available on [https://bugs.eclipse.org/bugs/show_bug.cgi?id=135044 bug 135044].  However these changes have not yet been released to CVS and are not yet available in the jarprocessor included in org.eclipse.update.core.
 +
<br>
 +
----
 +
<br>
 
When processing a given jar, there 3 places that the jar processor looks for properties to control the processing:
 
When processing a given jar, there 3 places that the jar processor looks for properties to control the processing:
 
# In the Jar's META-INF/eclipse.inf file
 
# In the Jar's META-INF/eclipse.inf file

Revision as of 17:31, 3 November 2006

Note the following page refers to options that are introduced to the jar processor with bug 159028. A Jar containing these changes is available on bug 135044. However these changes have not yet been released to CVS and are not yet available in the jarprocessor included in org.eclipse.update.core.



When processing a given jar, there 3 places that the jar processor looks for properties to control the processing:

  1. In the Jar's META-INF/eclipse.inf file
  2. If the jar is a nested jar, then in the containing jars' META-INF/eclipse.inf files.
  3. In the top level pack.properties placed in the input zip or directory.


META-INF/eclipse.inf properties

The following properties are currently read from the eclipse.inf file:

Set an exclusion property to true to use it:

  • jarprocesor.exclude : Exclude this jar from all processing
  • jarprocessor.exclude.pack : Exclude this jar pack200
  • jarprocessor.exclude.sign : Exclude this jar from signing
  • jarprocessor.exclude.children : Exclude children of this jar from all processing
  • jarprocessor.exclude.children.pack : Exclude children of this jar from pack200
  • jarprocessor.exclude.children.sign : Exclude children of this jar from signing


Pack200 arguments properties are comma separated lists of arguments:

  • pack200.args: Arguments to pass to pack200 for this jar
  • pack200.default.args: Arguments to use for pack200 on any nested jars if they don't specify their own pack200.args.


The Jar Processor will also write the following properties to the eclipse.inf file:

  • pack200.conditioned: Indicates that this jar has been conditioned with pack200
  • pack200.args: The arguments that were passed to pack200 when conditioning this jar.

Notice that pack200.args is both input and output.

pack.properties

The following properties are understood from the pack.properties file:

  • sign.excludes: A comma separated list of jar names to exclude from signing.
  • pack.excludes: A comma separated list of jar names to exclude from packing.

Both of the above properties over-ride anything in the eclipse.inf files. The full jar name must be specified (eg: org.eclipse.update.core_3.2.0.v20092006-1400.jar)

  • pack200.default.args: The default arguments to use with pack200. Values specified in the eclipse.inf files will over-ride this.


Other properties

By setting a vm system property "org.eclipse.update.jarprocessor.pack200" you can control which pack200 (or unpack200) command is used by the processing. Possible values are:

  • @jre : ${JAVA_HOME}/bin/pack200
  • @path : Use the first pack200 on the system search path
  • @none : Do not use pack200.
  • <directory> : The directory in which to find a pack200 command.

If this property is not set, the jar processor will look first in ${JAVA_HOME}\bin and then on the system search path.