Author: fmeschbe
Date: Fri Jan 23 07:33:59 2009
New Revision: 737054
URL: http://svn.apache.org/viewvc?rev=737054&view=rev
Log:
SLING-443 Modify the jcr/jackrabbit-server project to use a fixed
MANIFEST by default. This should save memory footprint since the
classes need not be analyzed. To build with an automatically
generated manifest the "bundle" profile may be used.
Added:
incubator/sling/trunk/jcr/jackrabbit-server/src/main/resources/META-INF/MANIFEST.MF
(with props)
Modified:
incubator/sling/trunk/jcr/jackrabbit-server/pom.xml
Modified: incubator/sling/trunk/jcr/jackrabbit-server/pom.xml
URL:
http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/jackrabbit-server/pom.xml?rev=737054&r1=737053&r2=737054&view=diff
==============================================================================
--- incubator/sling/trunk/jcr/jackrabbit-server/pom.xml (original)
+++ incubator/sling/trunk/jcr/jackrabbit-server/pom.xml Fri Jan 23 07:33:59 2009
@@ -27,7 +27,7 @@
</parent>
<artifactId>org.apache.sling.jcr.jackrabbit.server</artifactId>
- <packaging>bundle</packaging>
+ <packaging>jar</packaging>
<version>2.0.3-incubator-SNAPSHOT</version>
<name>Apache Sling Jackrabbit Embedded Repository</name>
@@ -44,56 +44,168 @@
<build>
<plugins>
+ <!-- generate the SCR descriptors -->
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-scr-plugin</artifactId>
</plugin>
+
+ <!--
+ copy the SCR descriptors into the correct location
+ because the maven-scr-plugin cannot be configured
+ to write the descriptors elsewhere
+ -->
<plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>2.3</version>
+ <executions>
+ <execution>
+ <id>copy-resources</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>
+ ${project.build.outputDirectory}
+ </outputDirectory>
+ <encoding>UTF-8</encoding>
+ <resources>
+ <resource>
+ <directory>target/scr-plugin-generated</directory>
+ <filtering>false</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!--
+ copy the embedded libraries required for the embedded
+ Jackrabbit Repository
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>embed-dependencies</id>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <includeArtifactIds>
+
jackrabbit-jcr-rmi,jackrabbit-core,jackrabbit-jcr-commons,jackrabbit-spi-commons,jackrabbit-spi,lucene-core,derby,concurrent,jackrabbit-text-extractors,pdfbox,jempbox,fontbox,poi,poi-scratchpad,nekohtml,xercesImpl
+ </includeArtifactIds>
+ <excludeTransitive>false</excludeTransitive>
+ <outputDirectory>
+ ${project.build.outputDirectory}
+ </outputDirectory>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+
+ <!--
+ By default the JAR plugin will use the MANIFEST.MF file found
+ in the src/main/resources/META-INF folder, which is copied
+ as a resource.
+
+ To use a manifest file, which is generated with the Apache
+ Felix Maven Bundle plugin enable the bundle profile (see below)
+ as in
+
+ $ mvn -P bundle clean install
+ -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
<extensions>true</extensions>
<configuration>
- <instructions>
- <Bundle-Category>
- sling,jcr,jackrabbit
- </Bundle-Category>
- <Bundle-Activator>
- org.apache.sling.jcr.jackrabbit.server.Activator
- </Bundle-Activator>
- <Private-Package>
- org.apache.sling.jcr.jackrabbit.server
- </Private-Package>
- <Import-Package>
- org.apache.sling.*, javax.jcr.*,
- javax.naming.*, javax.xml.*,
- javax.security.*,
- org.apache.commons.collections.*,
- org.apache.jackrabbit.api.*,
- org.osgi.*,
- org.slf4j, org.xml.sax, org.xml.sax.helpers
- </Import-Package>
- <DynamicImport-Package>*</DynamicImport-Package>
-
- <!-- Embedd some libraries -->
- <Embed-Transitive>true</Embed-Transitive>
- <Embed-Dependency>
- <!-- core repository implementation -->
- jackrabbit-jcr-rmi; jackrabbit-core;
- jackrabbit-jcr-commons;
- jackrabbit-spi-commons; jackrabbit-spi;
- lucene-core; derby; concurrent,
-
- <!-- jackrabbit text extraction -->
- jackrabbit-text-extractors,
- pdfbox, jempbox, fontbox,
- poi, poi-scratchpad,
- nekohtml, xercesImpl
- </Embed-Dependency>
- </instructions>
+ <archive>
+ <manifestFile>
+
${project.build.outputDirectory}/META-INF/MANIFEST.MF
+ </manifestFile>
+ </archive>
</configuration>
</plugin>
</plugins>
</build>
+
+ <profiles>
+ <!--
+ The bundle profile may be used to update the manifest entries of
+ the above default profile. If running the build with the build
+ profile, you may use the generated manifest to update the
+ src/main/resources/META-INF/MANIFEST.MF file for it to be used
+ in future builds excluding the bundle profile.
+ -->
+ <profile>
+ <id>bundle</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.felix</groupId>
+ <artifactId>maven-bundle-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>generate-manifest</id>
+ <goals>
+ <goal>manifest</goal>
+ </goals>
+ <configuration>
+ <instructions>
+ <Note>Built by bundle profile</Note>
+ <Bundle-Category>
+ sling,jcr,jackrabbit
+ </Bundle-Category>
+ <Bundle-Activator>
+
org.apache.sling.jcr.jackrabbit.server.Activator
+ </Bundle-Activator>
+ <Private-Package>
+
org.apache.sling.jcr.jackrabbit.server
+ </Private-Package>
+ <Import-Package>
+ org.apache.sling.*, javax.jcr.*,
+ javax.naming.*, javax.xml.*,
+ javax.security.*,
+ org.apache.commons.collections.*,
+ org.apache.jackrabbit.api.*,
+ org.osgi.*,
+ org.slf4j, org.xml.sax,
org.xml.sax.helpers
+ </Import-Package>
+
<DynamicImport-Package>*</DynamicImport-Package>
+
+ <!-- Embedd some libraries -->
+
<Embed-Transitive>true</Embed-Transitive>
+ <Embed-Dependency>
+ <!-- core repository
implementation -->
+ jackrabbit-jcr-rmi;
jackrabbit-core;
+ jackrabbit-jcr-commons;
+ jackrabbit-spi-commons;
jackrabbit-spi;
+ lucene-core; derby; concurrent,
+
+ <!-- jackrabbit text extraction -->
+ jackrabbit-text-extractors,
+ pdfbox, jempbox, fontbox,
+ poi, poi-scratchpad,
+ nekohtml, xercesImpl
+ </Embed-Dependency>
+ </instructions>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
+
<reporting>
<plugins>
<plugin>
Added:
incubator/sling/trunk/jcr/jackrabbit-server/src/main/resources/META-INF/MANIFEST.MF
URL:
http://svn.apache.org/viewvc/incubator/sling/trunk/jcr/jackrabbit-server/src/main/resources/META-INF/MANIFEST.MF?rev=737054&view=auto
==============================================================================
---
incubator/sling/trunk/jcr/jackrabbit-server/src/main/resources/META-INF/MANIFEST.MF
(added)
+++
incubator/sling/trunk/jcr/jackrabbit-server/src/main/resources/META-INF/MANIFEST.MF
Fri Jan 23 07:33:59 2009
@@ -0,0 +1,43 @@
+Manifest-Version: 1.0
+Note: Manifest File built by Maven Bundle Plugin
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.apache.sling.jcr.jackrabbit.server
+Bundle-Version: 2.0.3.incubator-SNAPSHOT
+Bundle-Name: Apache Sling Jackrabbit Embedded Repository
+Bundle-Description: Bundle providing support to embed Jackrabbit Repos
+ itory instances and publish via RMI and/or JNDI
+Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
+Bundle-Category: sling,jcr,jackrabbit
+Bundle-Vendor: The Apache Software Foundation
+Bundle-DocURL: http://incubator.apache.org/sling
+Bundle-Activator: org.apache.sling.jcr.jackrabbit.server.Activator
+Bundle-ClassPath: .,nekohtml-1.9.7.jar,lucene-core-2.3.2.jar,jackrabbi
+ t-spi-commons-1.5.0.jar,jackrabbit-jcr-commons-1.5.0.jar,jempbox-0.2.
+ 0.jar,jackrabbit-jcr-rmi-1.4.1.jar,concurrent-1.3.4.jar,jackrabbit-te
+ xt-extractors-1.5.0.jar,fontbox-0.1.0.jar,jackrabbit-core-1.5.0.jar,d
+ erby-10.2.1.6.jar,poi-3.0.2-FINAL.jar,xercesImpl-2.8.1.jar,pdfbox-0.7
+ .3.jar,jackrabbit-spi-1.5.0.jar,poi-scratchpad-3.0.2-FINAL.jar
+Import-Package: javax.jcr,javax.jcr.lock,javax.jcr.nodetype,javax.jcr.
+ observation,javax.jcr.query,javax.jcr.util,javax.jcr.version,javax.na
+ ming,javax.naming.directory,javax.naming.spi,javax.security.auth,java
+ x.security.auth.callback,javax.security.auth.login,javax.security.aut
+ h.spi,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.
+ xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.x
+ ml.transform.stream,javax.xml.validation,org.apache.commons.collectio
+ ns,org.apache.commons.collections.buffer,org.apache.commons.collectio
+ ns.iterators,org.apache.commons.collections.list,org.apache.commons.c
+ ollections.map,org.apache.commons.collections.set,org.apache.jackrabb
+ it.api;version="1.5",org.apache.jackrabbit.api.jsr283;version="1.5",o
+ rg.apache.jackrabbit.api.jsr283.nodetype;version="1.5",org.apache.jac
+ krabbit.api.jsr283.retention;version="1.5",org.apache.jackrabbit.api.
+ jsr283.security;version="1.5",org.apache.jackrabbit.api.observation;v
+ ersion="1.5",org.apache.jackrabbit.api.security.principal;version="1.
+ 5",org.apache.jackrabbit.api.security.user;version="1.5",org.apache.s
+ ling.jcr.api,org.apache.sling.jcr.base;version="2.0.2.incubator",org.
+ osgi.framework,org.osgi.service.cm,org.osgi.service.component,org.osg
+ i.service.log,org.slf4j,org.xml.sax,org.xml.sax.helpers
+DynamicImport-Package: *
+Service-Component: OSGI-INF/serviceComponents.xml
+Bnd-LastModified: 1232723302069
+Tool: Bnd-0.0.255
+Created-By: 1.6.0_10 (Sun Microsystems Inc.)
Propchange:
incubator/sling/trunk/jcr/jackrabbit-server/src/main/resources/META-INF/MANIFEST.MF
------------------------------------------------------------------------------
svn:eol-style = native