You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2013/04/12 12:46:20 UTC

svn commit: r1467232 - /jena/Experimental/jena-text/pom.xml

Author: andy
Date: Fri Apr 12 10:46:19 2013
New Revision: 1467232

URL: http://svn.apache.org/r1467232
Log:
Create combined fuseki server by shading.

Modified:
    jena/Experimental/jena-text/pom.xml

Modified: jena/Experimental/jena-text/pom.xml
URL: http://svn.apache.org/viewvc/jena/Experimental/jena-text/pom.xml?rev=1467232&r1=1467231&r2=1467232&view=diff
==============================================================================
--- jena/Experimental/jena-text/pom.xml (original)
+++ jena/Experimental/jena-text/pom.xml Fri Apr 12 10:46:19 2013
@@ -1,24 +1,17 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-   Licensed to the Apache Software Foundation (ASF) under one or more
-   contributor license agreements.  See the NOTICE file distributed with
-   this work for additional information regarding copyright ownership.
-   The ASF licenses this file to You under the Apache License, Version 2.0
-   (the "License"); you may not use this file except in compliance with
-   the License.  You may obtain a copy of the License at
-
-       http://www.apache.org/licenses/LICENSE-2.0
-
-   Unless required by applicable law or agreed to in writing, software
-   distributed under the License is distributed on an "AS IS" BASIS,
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-   See the License for the specific language governing permissions and
-   limitations under the License.
--->
-
-<project xmlns="http://maven.apache.org/POM/4.0.0" 
-	 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-	 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+<!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor 
+  license agreements. See the NOTICE file distributed with this work for additional 
+  information regarding copyright ownership. The ASF licenses this file to 
+  You under the Apache License, Version 2.0 (the "License"); you may not use 
+  this file except in compliance with the License. You may obtain a copy of 
+  the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
+  by applicable law or agreed to in writing, software distributed under the 
+  License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
+  OF ANY KIND, either express or implied. See the License for the specific 
+  language governing permissions and limitations under the License. -->
+
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>org.apache.jena</groupId>
   <artifactId>jena-text</artifactId>
@@ -83,7 +76,7 @@
       <version>${ver.lucene}</version>
       <type>jar</type>
     </dependency>
-    
+
     <dependency>
       <groupId>org.apache.lucene</groupId>
       <artifactId>lucene-queryparser</artifactId>
@@ -91,13 +84,10 @@
       <type>jar</type>
     </dependency>
 
-    <!-- Solr client-->
-    <!-- Exclusion of slf4: 
-	 Necessary otherwise maven complians about a
-	 "Dependency convergence error"
-	 of slf4j-api 1.6.1 (from zookeeper) vs 1.6.4 (Jena)
-	 Possibily due to the use of scope-test
-    -->
+    <!-- Solr client -->
+    <!-- Exclusion of slf4: Necessary otherwise maven complians about a "Dependency 
+      convergence error" of slf4j-api 1.6.1 (from zookeeper) vs 1.6.4 (Jena) Possibily 
+      due to the use of scope-test -->
 
     <dependency>
       <artifactId>solr-solrj</artifactId>
@@ -105,15 +95,15 @@
       <version>${ver.solr}</version>
       <optional>true</optional>
       <exclusions>
-	<exclusion>
-	  <groupId>org.slf4j</groupId>
+        <exclusion>
+          <groupId>org.slf4j</groupId>
           <artifactId>slf4j-api</artifactId>
         </exclusion>
-	<exclusion>
-	  <groupId>org.slf4j</groupId>
+        <exclusion>
+          <groupId>org.slf4j</groupId>
           <artifactId>slf4j-jdk14</artifactId>
         </exclusion>
-      </exclusions> 
+      </exclusions>
     </dependency>
 
     <!-- Embedded server / testing -->
@@ -125,15 +115,15 @@
       <scope>test</scope>
       <optional>true</optional>
       <exclusions>
-	<exclusion>
-	  <groupId>org.slf4j</groupId>
+        <exclusion>
+          <groupId>org.slf4j</groupId>
           <artifactId>slf4j-api</artifactId>
         </exclusion>
-	<exclusion>
-	  <groupId>org.slf4j</groupId>
+        <exclusion>
+          <groupId>org.slf4j</groupId>
           <artifactId>slf4j-jdk14</artifactId>
         </exclusion>
-      </exclusions> 
+      </exclusions>
     </dependency>
 
     <!-- Embedded Solr server -->
@@ -148,7 +138,7 @@
       <groupId>junit</groupId>
       <artifactId>junit</artifactId>
       <version>${ver.junit}</version>
-       <scope>test</scope>
+      <scope>test</scope>
     </dependency>
 
     <!-- Fuseki -->
@@ -156,135 +146,161 @@
       <groupId>org.apache.jena</groupId>
       <artifactId>jena-fuseki</artifactId>
       <version>0.2.7-SNAPSHOT</version>
-      <!--<scope>runtime</scope>-->
+      <!--<scope>runtime</scope> -->
     </dependency>
-    
+
   </dependencies>
 
   <build>
 
     <plugins>
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-compiler-plugin</artifactId>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-compiler-plugin</artifactId>
       </plugin>
 
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-surefire-plugin</artifactId>
-	<configuration>
-	  <includes>
-	    <include>**/TS_*.java</include>
-	  </includes>
-	</configuration>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <includes>
+            <include>**/TS_*.java</include>
+          </includes>
+        </configuration>
       </plugin>
-      
+
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-jar-plugin</artifactId>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
       </plugin>
 
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-source-plugin</artifactId>
-	<version>2.2.1</version>
-	<executions> 
-	  <execution>
-	    <id>attach-sources</id>
-	    <goals>
-	      <goal>jar-no-fork</goal> 
-	    </goals>
-	  </execution>
-	  <!-- Only material in the main jar
-	       <execution>
-	       <id>attach-sources-test</id>
-	       <goals>
-	       <goal>test-jar-no-fork</goal>
-	       </goals>
-	       </execution>
-	  -->
-	</executions>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-source-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-sources</id>
+            <goals>
+              <goal>jar-no-fork</goal>
+            </goals>
+          </execution>
+          <!-- Only material in the main jar <execution> <id>attach-sources-test</id> 
+            <goals> <goal>test-jar-no-fork</goal> </goals> </execution> -->
+        </executions>
       </plugin>
-      
+
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-javadoc-plugin</artifactId>
-	<executions>
-	  <execution>
-	    <id>attach-javadocs</id>
-	    <goals>
-	      <goal>jar</goal>
-	    </goals>
-	  </execution>
-	</executions>
-	<configuration>
-	  <version>true</version>
-	  <show>public</show>
-	  <quiet>true</quiet>
-	  <encoding>UTF-8</encoding>
-	  <windowtitle>${project.name} ${project.version}</windowtitle>
-	  <doctitle>${project.name} ${project.version}</doctitle>
-	  <bottom>Licenced under the Apache License, Version 2.0</bottom>
-	</configuration>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-javadoc-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>attach-javadocs</id>
+            <goals>
+              <goal>jar</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <version>true</version>
+          <show>public</show>
+          <quiet>true</quiet>
+          <encoding>UTF-8</encoding>
+          <windowtitle>${project.name} ${project.version}</windowtitle>
+          <doctitle>${project.name} ${project.version}</doctitle>
+          <bottom>Licenced under the Apache License, Version 2.0</bottom>
+        </configuration>
       </plugin>
-      
+
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-resources-plugin</artifactId>
-	<configuration>
-	  <encoding>UTF-8</encoding>
-	</configuration>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-resources-plugin</artifactId>
+        <configuration>
+          <encoding>UTF-8</encoding>
+        </configuration>
       </plugin>
 
       <plugin>
-	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-dependency-plugin</artifactId>
-	<version>2.5.1</version>
-	<configuration>
-	  <overWriteReleases>false</overWriteReleases>
-	  <overWriteIfNewer>true</overWriteIfNewer>
-	</configuration>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <configuration>
+          <overWriteReleases>false</overWriteReleases>
+          <overWriteIfNewer>true</overWriteIfNewer>
+        </configuration>
       </plugin>
-      
+
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-eclipse-plugin</artifactId>
+        <configuration>
+          <!-- By default, have separate Eclipse and maven build areas -->
+          <buildOutputDirectory>${project.build.directory}/classes</buildOutputDirectory>
+          <downloadSources>true</downloadSources>
+          <downloadJavadocs>false</downloadJavadocs>
+        </configuration>
+      </plugin>
+
+      <!-- Needs work -->
       <plugin>
 	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-eclipse-plugin</artifactId>
-	<version>2.9</version>
+	<artifactId>maven-shade-plugin</artifactId>
+	<version>2.0</version>
 	<configuration>
-	  <!-- By default, have separate Eclipse and maven build areas -->
-	  <buildOutputDirectory>${project.build.directory}/classes</buildOutputDirectory>
-	  <downloadSources>true</downloadSources>
-	  <downloadJavadocs>false</downloadJavadocs>
+	  <shadedArtifactAttached>true</shadedArtifactAttached>
+	  <shadedClassifierName>fuseki-server</shadedClassifierName>
+	  <transformers>
+	    <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+	      <mainClass>org.apache.jena.fuseki.FusekiCmd</mainClass>
+	    </transformer>
+	    <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
+	  </transformers>
+	  <filters>
+	    <filter>
+	      <artifact>*:*</artifact>
+	      <excludes>
+		<!-- Some jars are signed but shading breaks that.
+		     Don't include signing files.
+		-->
+		<exclude>META-INF/*.SF</exclude>
+		<exclude>META-INF/*.DSA</exclude>
+		<exclude>META-INF/*.RSA</exclude>
+	      </excludes>
+	    </filter>
+	  </filters>
 	</configuration>
-      </plugin>
-      
-      <plugin>
-	<artifactId>maven-assembly-plugin</artifactId>
 	<executions>
-	  <execution>
-	    <id>create-server-assembly</id>
-	    <phase>package</phase>
-	    <goals><goal>single</goal></goals>
-	    <configuration>
-	      <!--
-		<finalName>${server.jar.name}-fuseki</finalName>
-		<appendAssemblyId>false</appendAssemblyId>
-		<attach>false</attach>
-	      -->
-	      
-	      <archive>
-		<manifest>
-		  <mainClass>org.apache.jena.fuseki.FusekiCmd</mainClass>
-		</manifest>
-	      </archive>
-	      <descriptors>
-		<descriptor>assembly-text-fuseki.xml</descriptor>
-	      </descriptors>
-	    </configuration>
-	  </execution>
-	</executions>
+          <execution>
+            <phase>package</phase>
+            <goals>
+              <goal>shade</goal>
+            </goals>
+          </execution>
+        </executions>
       </plugin>
 
+      <!-- OLD
+      <plugin>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>create-server-assembly</id>
+            <phase>package</phase>
+            <goals>
+              <goal>single</goal>
+            </goals>
+            <configuration>
+              <archive>
+                <manifest>
+                  <mainClass>org.apache.jena.fuseki.FusekiCmd</mainClass>
+                </manifest>
+              </archive>
+              <descriptors>
+                <descriptor>assembly-text-fuseki.xml</descriptor>
+              </descriptors>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      -->
     </plugins>
 
   </build>