felix-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From conflue...@apache.org
Subject [CONF] Apache Felix > Sigil Properties
Date Tue, 14 Jul 2009 16:41:00 GMT
<html>
<head>
    <base href="http://cwiki.apache.org/confluence">
            <link rel="stylesheet" href="/confluence/s/1519/1/1/_/styles/combined.css?spaceKey=FELIX&amp;forWysiwyg=true"
type="text/css">
    </head>
<body style="background-color: white" bgcolor="white">
<div id="pageContent">
<div id="notificationFormat">
<div class="wiki-content">
<div class="email">
    <h2><a href="http://cwiki.apache.org/confluence/display/FELIX/Sigil+Properties">Sigil
Properties</a></h2>
    <h4>Page  <b>added</b> by             <a href="http://cwiki.apache.org/confluence/display/~dsavage@apache.org">David
Savage</a>
    </h4>
         <br/>
    <div class="notificationGreySide">
         <h2><a name="SigilProperties-Overview"></a>Overview</h2>

<p>sigil.properties is the common configuration file used in both the Eclipse and Ivy
plugins. It is also used for the repository configuration (sigil-repos.properties).</p>


<p>It supports 4 types of property:</p>

<ul>
	<li><b>simple</b> - e.g. name: foo or -activator: org.acme.Activator</li>
</ul>


<ul>
	<li><b>list</b> - e.g. -bundles: foo-api, foo-impl</li>
</ul>


<ul>
	<li><b>map</b> - e.g. -imports: org.foo; version=1.2, org.bar; version="[1.0,
1.1)"</li>
</ul>


<ul>
	<li><b>sub-property</b> - e.g. header;Bundle-Vendor: Acme or foo-api;-exports:
org.foo</li>
</ul>


<p>The sub-property type allows values to be set that are groups of properties. The
key prefix before ';' identifies the sub-property name. All keys with the same prefix contribute
to the sub-property value.</p>

<p>The -defaults mechanism allows projects to share common bundle headers and default
package import versions.</p>

<p>Most values are passed to <a href="http://www.aqute.biz/Code/Bnd" rel="nofollow">Bnd</a>,
so Bnd syntax can usually be used, for example: -resources: @lib, to embed a library.</p>


<h2><a name="SigilProperties-Reference"></a>Reference</h2>

<table class='confluenceTable'><tbody>
<tr>
<th class='confluenceTh'> Name </th>
<th class='confluenceTh'> Type </th>
<th class='confluenceTh'> Description </th>
</tr>
<tr>
<td class='confluenceTd'> -bundles </td>
<td class='confluenceTd'> list </td>
<td class='confluenceTd'> Set bundles to create. Each bundle should be defined as sub-properties
prefixed with the bundle name, unless only a single bundle is defined, when the prefix can
be omitted.</td>
</tr>
<tr>
<td class='confluenceTd'> -repositories </td>
<td class='confluenceTd'> list </td>
<td class='confluenceTd'> Set repositories to use. Each repository should be defined
as sub-properties prefixed with the repository name.</td>
</tr>
<tr>
<td class='confluenceTd'> -defaults </td>
<td class='confluenceTd'> simple </td>
<td class='confluenceTd'> Reads in specified defaults file. If prefixed with '-' then
any error reading file is ignored. Default is -../sigil-defaults.properties </td>
</tr>
<tr>
<td class='confluenceTd'> header;<em>key</em> </td>
<td class='confluenceTd'> sub-property </td>
<td class='confluenceTd'> Specify additional bundle headers. </td>
</tr>
<tr>
<td class='confluenceTd'> package;<em>key</em> </td>
<td class='confluenceTd'> sub-property </td>
<td class='confluenceTd'> Specify default Import-Package versions. e.g. package;org.osgi.framework:
1.4 </td>
</tr>
<tr>
<td class='confluenceTd'> bundle;<em>key</em> </td>
<td class='confluenceTd'> sub-property </td>
<td class='confluenceTd'> Specify default Require-Bundle versions. </td>
</tr>
<tr>
<td class='confluenceTd'> name </td>
<td class='confluenceTd'> simple </td>
<td class='confluenceTd'> Set Bundle-SymbolicName. Default is bundle id from -bundles.
</td>
</tr>
<tr>
<td class='confluenceTd'> version </td>
<td class='confluenceTd'> simple </td>
<td class='confluenceTd'> Set bundle version and default export version. </td>
</tr>
<tr>
<td class='confluenceTd'> -activator </td>
<td class='confluenceTd'> simple </td>
<td class='confluenceTd'> Set bundle activator. </td>
</tr>
<tr>
<td class='confluenceTd'> -contents </td>
<td class='confluenceTd'> list </td>
<td class='confluenceTd'> Add specified packages to bundle. Defaults from -sourcedirs,
or if not set -exports. </td>
</tr>
<tr>
<td class='confluenceTd'> -sourcedirs </td>
<td class='confluenceTd'> list </td>
<td class='confluenceTd'> Alternative way to specify bundle contents. </td>
</tr>
<tr>
<td class='confluenceTd'> -resources </td>
<td class='confluenceTd'> list </td>
<td class='confluenceTd'> Specify additional resources to add to bundle. Supports BND
use of {} to filter files and @name.jar to embed jar from classpath. </td>
</tr>
<tr>
<td class='confluenceTd'> -exports </td>
<td class='confluenceTd'> map </td>
<td class='confluenceTd'> Set Export-Package bundle header. Export version defaults
from bundle version.</td>
</tr>
<tr>
<td class='confluenceTd'> -requires </td>
<td class='confluenceTd'> map </td>
<td class='confluenceTd'> Specify Require-Bundle dependencies. </td>
</tr>
<tr>
<td class='confluenceTd'> -imports </td>
<td class='confluenceTd'> map </td>
<td class='confluenceTd'> Specify Import-Package dependencies. Sigil adds the resolve
attribute:
<ul>
	<li>resolve=compile Only use import to determine compile dependencies; do NOT add to
bundle headers.</li>
	<li>resolve=runtime Always add import to bundle headers (even if it appears unneeded).
Do NOT generate compile dependency.</li>
</ul>
</td>
</tr>
<tr>
<td class='confluenceTd'> -fragment </td>
<td class='confluenceTd'> map </td>
<td class='confluenceTd'> Set Fragment-Host bundle header. </td>
</tr>
<tr>
<td class='confluenceTd'> -libs </td>
<td class='confluenceTd'> map </td>
<td class='confluenceTd'> Add jars to bundle. Attributes:
<ul>
	<li>kind=classpath also adds jar to Bundle-Classpath</li>
	<li>kind=codebase sets Newton RMI-Codebase</li>
</ul>
</td>
</tr>
<tr>
<td class='confluenceTd'> option;<em>name</em> </td>
<td class='confluenceTd'> sub-property </td>
<td class='confluenceTd'> Specify Sigil options:
<ul>
	<li>option;addMissingImports=true Let Bnd calculate imports (i.e. specify *) then update
with Sigil versions. Default: true.</li>
	<li>option;omitUnusedImports=true (implies addMissingImports=true) Avoids Bnd warnings
when project contains multiple bundles which don't all use all imports. Default: true for
projects with multiple bundles; otherwise false.</li>
</ul>
</td>
</tr>
</tbody></table>
    </div>
    <div id="commentsSection" class="wiki-content pageSection">
       <div style="float: right;">
            <a href="http://cwiki.apache.org/confluence/users/viewnotifications.action"
class="grey">Change Notification Preferences</a>
       </div>
       <a href="http://cwiki.apache.org/confluence/display/FELIX/Sigil+Properties">View
Online</a>
              |
       <a href="http://cwiki.apache.org/confluence/display/FELIX/Sigil+Properties?showComments=true&amp;showCommentArea=true#addcomment">Add
Comment</a>
           </div>
</div>
</div>
</div>
</div>
</body>
</html>

Mime
View raw message