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 2023/01/03 10:20:08 UTC

[jena-site] branch main updated: update jena-repack.md: add a bit more information (gradle), cleanup

This is an automated email from the ASF dual-hosted git repository.

andy pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena-site.git


The following commit(s) were added to refs/heads/main by this push:
     new 978c58086 update jena-repack.md: add a bit more information (gradle), cleanup
978c58086 is described below

commit 978c5808613ab89c61573be88a06d8e9027b2ded
Author: sszuev <ss...@gmail.com>
AuthorDate: Wed Sep 28 15:55:54 2022 +0300

    update jena-repack.md: add a bit more information (gradle), cleanup
---
 source/documentation/notes/jena-repack.md | 53 +++++++++++++++++++------------
 1 file changed, 32 insertions(+), 21 deletions(-)

diff --git a/source/documentation/notes/jena-repack.md b/source/documentation/notes/jena-repack.md
index 544d84ec8..e5219cc01 100644
--- a/source/documentation/notes/jena-repack.md
+++ b/source/documentation/notes/jena-repack.md
@@ -18,6 +18,7 @@ dependencies and application code, the contents of the Jena files must
 be combined and be present in the combined jar as a java resource of the
 same name.
 
+#### Maven
 The 
 [maven shade plugin](https://maven.apache.org/plugins/maven-shade-plugin/) 
 is capable of doing this process in a build using a "transformer".
@@ -27,32 +28,42 @@ for Fuseki.  It uses the maven shade plugin with a `transformer`.
 
 This is an extract from the POM:
 
-    <plugin>
-      <groupId>org.apache.maven.plugins</groupId>
-      <artifactId>maven-shade-plugin</artifactId>
-      <configuration>
-        ...
-        <transformers>
-          <transformer 
-              implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
-          ... other transformers ...
-        </transformers>
-
+```xml
+<plugin>
+  <groupId>org.apache.maven.plugins</groupId>
+  <artifactId>maven-shade-plugin</artifactId>
+  <configuration>
+    ...
+    <transformers>
+      <transformer 
+          implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
+      ... other transformers ...
+    </transformers>
+  </configuration>
+</plugin>
+```
 See
 [jena-fuseki2/jena-fuseki-server/pom.xml](https://github.com/apache/jena/blob/main/jena-fuseki2/jena-fuseki-server/pom.xml)
 for the complete shade plugin setup used by Fuseki.
 
-If doing manually, create a single file in your application jar the
-all lines of all the services resource files. The order does not matter
-- Jena calls modules in the right order.
-
-For Gradle, the [shadowJar plugin](https://imperceptiblethoughts.com/shadow/)
+#### Gradle
+For Gradle, the [shadowJar plugin](https://plugins.gradle.org/plugin/com.github.johnrengelman.shadow)
 has the
 [mergeServiceFiles](https://imperceptiblethoughts.com/shadow/configuration/merging/#merging-service-descriptor-files)
 operation.
 
-    // Merging Service Files
-    shadowJar {
-      mergeServiceFiles()
-      . . .
-    }
+```groovy
+plugins {
+  ...    
+  id "com.github.johnrengelman.shadow" version "7.1.2"
+}
+shadowJar {
+  mergeServiceFiles()
+}
+...
+```    
+
+#### Manual assembling
+If doing manually, create a single file (`META-INF/services/org.apache.jena.sys.JenaSubsystemLifecycle`) in your application jar containing the
+lines of all the services resource files. The order does not matter.
+Jena calls modules in the right order.
\ No newline at end of file