BTM
  1. BTM
  2. BTM-122

Use maven-bundle-plugin to generate proper OSGi manifest headers

    Details

    • Type: Improvement Improvement
    • Status: Open Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: 3.0.0
    • Fix Version/s: 3.0.0
    • Labels:
    • Environment:
      Java 7 / MacOS X / Eclipse Virgo
    • Number of attachments :
      5

      Description

      Hi

      For our platform we OSGi (Eclipse Virgo). To make btm working, I replaced in the attached pom files the maven-jar-plugin with maven-bundle-plugin. This generates following OSGi friendly manifests:

      ==== btm ====
      Manifest-Version: 1.0
      Bnd-LastModified: 1354741400822
      Build-Jdk: 1.7.0_05
      Built-By: rolandhauser
      Bundle-Description: The Codehaus is a collaborative environment for buil
      ding open source projects with a strong emphasis on modern languages, f
      ocussed on quality components that meet real world needs.
      Bundle-DocURL: http://bitronix.be/
      Bundle-License: http://www.gnu.org/copyleft/lesser.html
      Bundle-ManifestVersion: 2
      Bundle-Name: Bitronix Transaction Manager :: Core
      Bundle-SymbolicName: org.codehaus.btm
      Bundle-Vendor: Bitronix Software
      Bundle-Version: 2.1.3.SNAPSHOT
      Created-By: Apache Maven Bundle Plugin
      Export-Package: bitronix.tm;uses:="bitronix.tm.timer,bitronix.tm.twopc,b
      itronix.tm.resource.common,org.slf4j,bitronix.tm.resource,javax.transac
      tion,bitronix.tm.utils,javax.transaction.xa,bitronix.tm.twopc.executor,
      bitronix.tm.journal,javax.naming,bitronix.tm.recovery,javax.naming.spi"
      ;version="2.1.3.SNAPSHOT",bitronix.tm.gui;uses:="javax.swing,bitronix.t
      m,javax.swing.border,org.slf4j,javax.swing.table,bitronix.tm.utils,bitr
      onix.tm.journal,javax.swing.event,bitronix.tm.resource.common,bitronix.
      tm.resource,javax.swing.tree";version="2.1.3.SNAPSHOT",bitronix.tm.jndi
      ;uses:="javax.naming,bitronix.tm,bitronix.tm.resource.common,org.slf4j,
      bitronix.tm.resource,javax.naming.spi";version="2.1.3.SNAPSHOT",bitroni
      x.tm.journal;uses:="org.slf4j,bitronix.tm.utils,bitronix.tm";version="2
      .1.3.SNAPSHOT",bitronix.tm.recovery;uses:="javax.transaction.xa,bitroni
      x.tm.utils,bitronix.tm,bitronix.tm.resource.common,bitronix.tm.journal,
      org.slf4j,bitronix.tm.resource";version="2.1.3.SNAPSHOT",bitronix.tm.re
      source;uses:="javax.jms,javax.sql,bitronix.tm.utils,bitronix.tm,bitroni
      x.tm.resource.common,org.slf4j,javax.naming,javax.naming.spi,bitronix.t
      m.recovery,javax.transaction.xa";version="2.1.3.SNAPSHOT",bitronix.tm.r
      esource.common;uses:="javax.transaction.xa,bitronix.tm.utils,bitronix.t
      m,org.slf4j,javax.transaction,bitronix.tm.recovery,bitronix.tm.timer,ja
      vax.naming";version="2.1.3.SNAPSHOT",bitronix.tm.resource.ehcache;uses:
      ="javax.transaction.xa,bitronix.tm.resource.common,javax.naming,bitroni
      x.tm.recovery,org.slf4j,bitronix.tm.resource";version="2.1.3.SNAPSHOT",
      bitronix.tm.resource.jdbc;uses:="javax.transaction,bitronix.tm.utils,bi
      tronix.tm.resource.common,org.slf4j,javax.sql,bitronix.tm.resource.jdbc
      .lrc,javax.transaction.xa,bitronix.tm,javax.naming,bitronix.tm.recovery
      ,bitronix.tm.resource";version="2.1.3.SNAPSHOT",bitronix.tm.resource.jd
      bc.lrc;uses:="bitronix.tm.resource.jdbc,javax.sql,javax.transaction.xa,
      bitronix.tm.utils,org.slf4j";version="2.1.3.SNAPSHOT",bitronix.tm.resou
      rce.jms;uses:="javax.jms,javax.transaction,javax.transaction.xa,bitroni
      x.tm.utils,bitronix.tm,bitronix.tm.resource.common,org.slf4j,bitronix.t
      m.resource.jms.lrc,javax.naming,javax.rmi,bitronix.tm.recovery,bitronix
      .tm.resource";version="2.1.3.SNAPSHOT",bitronix.tm.resource.jms.lrc;use
      s:="javax.jms,bitronix.tm.utils,javax.transaction.xa,org.slf4j";version
      ="2.1.3.SNAPSHOT",bitronix.tm.timer;uses:="bitronix.tm.resource.common,
      bitronix.tm.recovery,bitronix.tm,org.slf4j,bitronix.tm.utils";version="
      2.1.3.SNAPSHOT",bitronix.tm.twopc;uses:="javax.transaction.xa,bitronix.
      tm.utils,bitronix.tm,bitronix.tm.twopc.executor,org.slf4j,javax.transac
      tion";version="2.1.3.SNAPSHOT",bitronix.tm.twopc.executor;uses:="bitron
      ix.tm.utils,javax.transaction.xa,bitronix.tm";version="2.1.3.SNAPSHOT",
      bitronix.tm.utils;uses:="org.slf4j,javax.crypto.spec,bitronix.tm,javax.
      crypto,javax.transaction.xa,javax.management";version="2.1.3.SNAPSHOT"
      Import-Package: javax.crypto,javax.crypto.spec,javax.jms;version="[1.1,2
      )";resolution:=optional,javax.management,javax.naming,javax.naming.spi,
      javax.rmi,javax.sql,javax.swing,javax.swing.border,javax.swing.event,ja
      vax.swing.table,javax.swing.tree,javax.transaction,javax.transaction.xa
      ,org.slf4j;version="[1.6,2)"
      Main-Class: bitronix.tm.utils.CryptoEngine
      Tool: Bnd-1.50.0
      ======

      === btm-jetty6-lifecycle ===
      Manifest-Version: 1.0
      Bnd-LastModified: 1354741413964
      Build-Jdk: 1.7.0_05
      Built-By: rolandhauser
      Bundle-Description: The Codehaus is a collaborative environment for buil
      ding open source projects with a strong emphasis on modern languages, f
      ocussed on quality components that meet real world needs.
      Bundle-DocURL: http://bitronix.be/
      Bundle-License: http://www.gnu.org/copyleft/lesser.html
      Bundle-ManifestVersion: 2
      Bundle-Name: Bitronix Transaction Manager :: Jetty 6 lifecycle
      Bundle-SymbolicName: org.codehaus.btm.jetty6-lifecycle
      Bundle-Vendor: Bitronix Software
      Bundle-Version: 2.1.3.SNAPSHOT
      Created-By: Apache Maven Bundle Plugin
      Export-Package: bitronix.tm.integration.jetty6;uses:="org.mortbay.log,bi
      tronix.tm,org.mortbay.component";version="2.1.3.SNAPSHOT"
      Import-Package: bitronix.tm;version="[2.1,3)",org.mortbay.component;vers
      ion="[6.1,7)",org.mortbay.log;version="[6.1,7)"
      Tool: Bnd-1.50.0
      ===

      === btm-jetty7-lifecycle ===
      Manifest-Version: 1.0
      Bnd-LastModified: 1354741414658
      Build-Jdk: 1.7.0_05
      Built-By: rolandhauser
      Bundle-Description: The Codehaus is a collaborative environment for buil
      ding open source projects with a strong emphasis on modern languages, f
      ocussed on quality components that meet real world needs.
      Bundle-DocURL: http://bitronix.be/
      Bundle-License: http://www.gnu.org/copyleft/lesser.html
      Bundle-ManifestVersion: 2
      Bundle-Name: Bitronix Transaction Manager :: Jetty 7 lifecycle
      Bundle-SymbolicName: org.codehaus.btm.jetty7-lifecycle
      Bundle-Vendor: Bitronix Software
      Bundle-Version: 2.1.3.SNAPSHOT
      Created-By: Apache Maven Bundle Plugin
      Export-Package: bitronix.tm.integration.jetty7;uses:="bitronix.tm,org.ec
      lipse.jetty.util.component,org.eclipse.jetty.util.log";version="2.1.3.S
      NAPSHOT"
      Import-Package: bitronix.tm;version="[2.1,3)",org.eclipse.jetty.util.com
      ponent;version="[7.3,8)",org.eclipse.jetty.util.log;version="[7.3,8)"
      Tool: Bnd-1.50.0
      ===

      === btm-tomcat55-lifecycle ==
      Manifest-Version: 1.0
      Bnd-LastModified: 1354741415237
      Build-Jdk: 1.7.0_05
      Built-By: rolandhauser
      Bundle-Description: The Codehaus is a collaborative environment for buil
      ding open source projects with a strong emphasis on modern languages, f
      ocussed on quality components that meet real world needs.
      Bundle-DocURL: http://bitronix.be/
      Bundle-License: http://www.gnu.org/copyleft/lesser.html
      Bundle-ManifestVersion: 2
      Bundle-Name: Bitronix Transaction Manager :: Tomcat 5.5+ lifecycle
      Bundle-SymbolicName: org.codehaus.btm.tomcat55-lifecycle
      Bundle-Vendor: Bitronix Software
      Bundle-Version: 2.1.3.SNAPSHOT
      Created-By: Apache Maven Bundle Plugin
      Export-Package: bitronix.tm.integration.tomcat55;uses:="org.apache.catal
      ina,bitronix.tm";version="2.1.3.SNAPSHOT"
      Import-Package: bitronix.tm;version="[2.1,3)",org.apache.catalina
      Tool: Bnd-1.50.0
      ===

      I tested the generated bundles and they work without any problems. It would be great to see this changes in the next release.

      1. pom.xml
        4 kB
        Roland Hauser
      2. pom.xml
        1 kB
        Roland Hauser
      3. pom.xml
        1 kB
        Roland Hauser
      4. pom.xml
        1 kB
        Roland Hauser
      5. pom.xml
        7 kB
        Roland Hauser

        Activity

        Hide
        Roland Hauser added a comment -

        I forgott to mention: we use Apache Maven 3.0.4

        Show
        Roland Hauser added a comment - I forgott to mention: we use Apache Maven 3.0.4

          People

          • Assignee:
            Ludovic Orban
            Reporter:
            Roland Hauser
          • Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:

              Time Tracking

              Estimated:
              Original Estimate - 1 hour
              1h
              Remaining:
              Remaining Estimate - 1 hour
              1h
              Logged:
              Time Spent - Not Specified
              Not Specified