1.0rc9 missing OSGi headers?

72 views
Skip to first unread message

Raman Gupta

unread,
Mar 27, 2012, 2:00:06 PM3/27/12
to orient-...@googlegroups.com
The 1.0rc9 snapshot I just downloaded from Maven seems to be missing the OSGi headers. Packaging error?

Regards,
Raman
Principal
VIVO Systems

Gabriel Vince

unread,
Mar 28, 2012, 4:17:45 AM3/28/12
to orient-...@googlegroups.com
Hello,

Indeed, version 1.0-SNAPSHOT as well, seems POMs has been changed

Gabriel

btw - of you are using OSGi deployment - maybe you could have an advice:
I bundle the OrientDB client libraries into one separate librarym because our OSGi container (Apache Karaf) looses class annotations (@Entity) when the libraries are separated - do you have the same issue or I do something wrong?

Gabriel

Op dinsdag 27 maart 2012 20:00:06 UTC+2 schreef Raman Gupta het volgende:

Gabriel Vince

unread,
Mar 28, 2012, 4:25:18 AM3/28/12
to orient-...@googlegroups.com
interesting, I've checked the pom.xml, it contains the export property (   <export.package>com.orientechnologies.orient.core.*</export.package> ), but you are right - OSGi metadata are not generated...


Op dinsdag 27 maart 2012 20:00:06 UTC+2 schreef Raman Gupta het volgende:
The 1.0rc9 snapshot I just downloaded from Maven seems to be missing the OSGi headers. Packaging error?

Gabriel Vince

unread,
Mar 28, 2012, 4:33:36 AM3/28/12
to orient-...@googlegroups.com
Hello,

I am not a commiterm but seems there is a change needed, Luc@ or others, could you help please:

seems in the pom.xml for projects, a following change is needed to generate the OSGi header:
from : <packaging>jar</packaging>
to:     <packaging>bundle</packaging>

Gabriel

Op woensdag 28 maart 2012 10:17:45 UTC+2 schreef Gabriel Vince het volgende:

Luca Garulli

unread,
Mar 28, 2012, 6:27:15 AM3/28/12
to orient-...@googlegroups.com
Hi Gabriel,
good catch!

Fixed in SVN trunk r5089 and just deployed as 1.0-SNAPSHOT on maven central snapshot repository.

Thanks!
Lvc@

Raman Gupta

unread,
Mar 29, 2012, 10:16:39 PM3/29/12
to orient-...@googlegroups.com
Just FYI, for creating bundles from maven using the maven-bundle-plugin, you can simply change the packaging type to "bundle" as Gabriel suggests below, OR you can keep the packaging type as jar but add 

        <executions>
          <execution>
            <id>bundle-manifest</id>
            <phase>process-classes</phase>
            <goals>
              <goal>manifest</goal>
            </goals>
          </execution>
        </executions>

to the plugin configuration AND 

        <configuration>
          <archive>
            <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
          </archive>
        </configuration>

to the maven-jar-plugin configuration.

Regards,
Raman

Luca Garulli

unread,
Mar 30, 2012, 3:11:41 AM3/30/12
to orient-...@googlegroups.com
Hi,
is the "MANIFEST.MF" section required to have a fully compliant OSGi bundle or it's the default one?

Lvc@

Raman Gupta

unread,
Mar 30, 2012, 3:50:09 AM3/30/12
to orient-...@googlegroups.com
The MANIFEST.MF bit is required to pull in the manifest as generated by the bundle plugin. Otherwise the bundle plugin will create the OSGi-compliant manifest, but the jar plugin won't add it into the jar.

Luca Garulli

unread,
Mar 30, 2012, 11:43:59 AM3/30/12
to orient-...@googlegroups.com
Fixed in SVN trunk as r5109.

Thanks!
Lvc@

Raman Gupta

unread,
Mar 30, 2012, 1:55:24 PM3/30/12
to orient-...@googlegroups.com
I may have confused things!

You actually don't need the extra configuration on maven-jar-plugin or to maven-bundle-plugin that I described above if you have <packaging>bundle</packaging> (which you currently do). With packaging bundle I believe the maven-bundle-plugin takes care of building the jar so it does the right thing automatically.

I was just providing an alternate mechanism if and only if you wanted to keep packaging type = jar as many projects seem to want to do (which would be the case if you have other configuration on maven-jar-plugin, for example).

Sorry for the confusion!

Regards,
Raman

Luca Garulli

unread,
Mar 30, 2012, 2:08:27 PM3/30/12
to orient-...@googlegroups.com
Ok,
is it a problem if I leave it?

Lvc@

Luca Garulli

unread,
Mar 30, 2012, 2:17:04 PM3/30/12
to orient-...@googlegroups.com
Removed ;-)

Lvc@

Gabriel Vince

unread,
Apr 2, 2012, 3:09:22 AM4/2/12
to orient-...@googlegroups.com
Hello Luca,

we use the OrientDB in OGSi environment, so we prefer to have the manifest headers to be OSGi compliant.. we have still some problems with class annotations between bundles (seems it is an OSGi container issue). From usability point of view - we consider very convient and often important when a library can be directly deployed in the OSGi environment without rebuilding, bundling and testing..

Gabriel


Op vrijdag 30 maart 2012 20:17:04 UTC+2 schreef Lvc@ het volgende:
Removed ;-)

Luca Garulli

unread,
Apr 2, 2012, 9:28:44 AM4/2/12
to orient-...@googlegroups.com
Hi Gabriel,
I've redeployed the latest SVN trunk as 1.0-SNAPSHOT. Can we improve those bundles to be "more" OSGi compliant?

Lvc@

Gabriel Vince

unread,
Apr 4, 2012, 7:10:18 AM4/4/12
to orient-...@googlegroups.com
Hello,

for now it is enough when the client libraries have the Export-Package and Import-Package clausules in the MANIFEST.MF, then it is easy to deploy the libraries directly.

I plan to start the server as an OSGi bundle, if anybody interested, I will post the module configuration once it's done. So far I'm happy as it is :)

Best regards
    Gabriel



On Monday, April 2, 2012 3:28:44 PM UTC+2, Lvc@ wrote:
Hi Gabriel,
I've redeployed the latest SVN trunk as 1.0-SNAPSHOT. Can we improve those bundles to be "more" OSGi compliant?

Lvc@
Reply all
Reply to author
Forward
0 new messages