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

nkalmar pushed a commit to branch branch-3.7
in repository https://gitbox.apache.org/repos/asf/zookeeper.git


The following commit(s) were added to refs/heads/branch-3.7 by this push:
     new 726bc55  ZOOKEEPER-4331: add headers back in osgi artifact
726bc55 is described below

commit 726bc55c9575b57375274565f355524a12f839bd
Author: Wu, Xiaokai (Marvin) <[email protected]>
AuthorDate: Tue Aug 3 11:37:43 2021 +0200

    ZOOKEEPER-4331: add headers back in osgi artifact
    
    Following up https://github.com/apache/zookeeper/pull/1722, I'm applying 
the change on master instead of 3.5.x as advised.
    
    As an alternative to https://github.com/apache/zookeeper/pull/1726, this 
change employs bundle plugin to build another artifact of classifier "osgi".
    
    The advantage would be bundle plugin remains employed to maintain the 
topology of versioned packages, and the original artifact without classifier is 
left untouched.
    
    The disadvantage would be we've one more artifact delivered in this project.
    
    ```
    $ ls zookeeper-server/target/ | grep jar$
    zookeeper-3.5.9.jar
    zookeeper-3.5.9-javadoc.jar
    zookeeper-3.5.9-osgi.jar
    zookeeper-3.5.9-sources.jar
    zookeeper-3.5.9-tests.jar
    ```
    
    Author: Wu, Xiaokai (Marvin) <[email protected]>
    
    Reviewers: Enrico Olivelli <[email protected]>, Norbert Kalmar 
<[email protected]>
    
    Closes #1727 from bigmarvin/ZOOKEEPER-4331/add-new-osgi-artifact
    
    (cherry picked from commit 9a5da5f9a023e53bf339748b5b7b17278ae36475)
    Signed-off-by: Norbert Kalmar <[email protected]>
---
 pom.xml                  |  5 +++++
 zookeeper-jute/pom.xml   | 32 ++++++++++++++++++++++++++++++++
 zookeeper-server/pom.xml | 46 +++++++++++++++++++++++++++++++++++++++++++++-
 3 files changed, 82 insertions(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index e177ac9..71c0db8 100755
--- a/pom.xml
+++ b/pom.xml
@@ -790,6 +790,11 @@
             </execution>
           </executions>
         </plugin>
+        <plugin>
+          <groupId>org.apache.felix</groupId>
+          <artifactId>maven-bundle-plugin</artifactId>
+          <version>4.1.0</version>
+        </plugin>
       </plugins>
     </pluginManagement>
 
diff --git a/zookeeper-jute/pom.xml b/zookeeper-jute/pom.xml
index 881d905..197e001 100755
--- a/zookeeper-jute/pom.xml
+++ b/zookeeper-jute/pom.xml
@@ -150,6 +150,38 @@
             <skip>true</skip>
         </configuration>
       </plugin>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>build bundle</id>
+            <phase>package</phase>
+            <goals>
+              <goal>bundle</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <instructions>
+            <Import-Package>
+              *;resolution:=optional
+            </Import-Package>
+            <Export-Package>
+              org.apache.zookeeper.data,
+              org.apache.zookeeper.proto,
+              org.apache.zookeeper.txn,
+              !org.apache.zookeeper*,
+              org.apache.jute*
+            </Export-Package>
+            <Bundle-Name>ZooKeeper Jute Bundle</Bundle-Name>
+            
<Bundle-DocURL>https://zookeeper.apache.org/doc/current/</Bundle-DocURL>
+            <Implementation-Build>${mvngit.commit.id}</Implementation-Build>
+            <Merge-Headers>!Implementation-Build,*</Merge-Headers>
+          </instructions>
+          <classifier>osgi</classifier>
+        </configuration>
+      </plugin>
     </plugins>
   </build>
 
diff --git a/zookeeper-server/pom.xml b/zookeeper-server/pom.xml
index a2e0c55..61735ed 100755
--- a/zookeeper-server/pom.xml
+++ b/zookeeper-server/pom.xml
@@ -271,7 +271,51 @@
           </systemPropertyVariables>
         </configuration>
       </plugin>
-         
+
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>build bundle</id>
+            <phase>package</phase>
+            <goals>
+              <goal>bundle</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <instructions>
+            <Import-Package>
+              io.netty.buffer;resolution:=optional,
+              io.netty.channel;resolution:=optional,
+              io.netty.channel.group;resolution:=optional,
+              io.netty.channel.socket.nio;resolution:=optional,
+              javax.management;resolution:=optional,
+              javax.security.auth.callback,
+              javax.security.auth.login,
+              javax.security.sasl,
+              org.ietf.jgss,
+              org.osgi.framework;resolution:=optional,
+              org.osgi.util.tracker;resolution:=optional,
+              org.slf4j,
+              *;resolution:=optional
+            </Import-Package>
+            <Export-Package>
+              !org.apache.zookeeper.data,
+              !org.apache.zookeeper.proto,
+              !org.apache.zookeeper.txn,
+              org.apache.zookeeper*
+            </Export-Package>
+            <Bundle-Name>ZooKeeper Bundle</Bundle-Name>
+            
<Bundle-DocURL>https://zookeeper.apache.org/doc/current/</Bundle-DocURL>
+            <Implementation-Build>${mvngit.commit.id}</Implementation-Build>
+            <Merge-Headers>!Implementation-Build,*</Merge-Headers>
+          </instructions>
+          <classifier>osgi</classifier>
+        </configuration>
+      </plugin>
+
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-jar-plugin</artifactId>

Reply via email to