[ 
https://issues.apache.org/jira/browse/LUCENE-3167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13604306#comment-13604306
 ] 

Nicolas Lalevée commented on LUCENE-3167:
-----------------------------------------

If I simplify, Maven dependency management is about declaring that a jar 
depends on another. OSGi is more powerful/complex than that. It can do that jar 
to jar dependency, but it is not recommended by the advocates of OSGi. The 
prefered way is when dependencies are declared between the java packages. So 
instead of declaring a dependency on a jar, you declare a dependency on a java 
package. It is then like declaring a dependency on an API rather than an 
implementation. And then comes versioning into the mix : you have a version of 
an API (the java packages) and the version of the implementation (the 
jar/bundle). So that static metadata in the manifest is not trivial to maintain.
Then here comes some tools to help, the patches here use "bnd". The java 
packages are somewhat part of the Java type system, so tools like bnd you can 
infer nearly automatically these dependencies. 

Also note that contrary to the Maven world, the OSGi world doesn't have a world 
class reference repository. So you do not need to upload it anywhere else. I 
guess this issue is "just" about making the Lucene jars droppable in the OSGi 
environement as is.

Maybe if the Lucene committers doesn't feel enough confortable with OSGi, they 
should let it to some external OSGi packagers, just like there are debian 
packagers. Here is a exemple of an Ivy repository maintained by 'packagers': 
https://code.google.com/p/ivyroundup/. There was a tentative for OSGi but it 
stalled: https://github.com/glyn/bundlerepo

                
> Make lucene/solr a OSGI bundle through Ant
> ------------------------------------------
>
>                 Key: LUCENE-3167
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3167
>             Project: Lucene - Core
>          Issue Type: New Feature
>         Environment: bndtools
>            Reporter: Luca Stancapiano
>         Attachments: LUCENE-3167_20130108.patch, LUCENE-3167.patch, 
> LUCENE-3167.patch, LUCENE-3167.patch, lucene_trunk.patch, lucene_trunk.patch
>
>
> We need to make a bundle thriugh Ant, so the binary can be published and no 
> more need the download of the sources. Actually to get a OSGI bundle we need 
> to use maven tools and build the sources. Here the reference for the creation 
> of the OSGI bundle through Maven:
> https://issues.apache.org/jira/browse/LUCENE-1344
> Bndtools could be used inside Ant

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to