lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Luca Stancapiano (JIRA)" <j...@apache.org>
Subject [jira] [Issue Comment Edited] (LUCENE-3167) Make lucene/solr a OSGI bundle through Ant
Date Wed, 31 Aug 2011 21:14:10 GMT

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

Luca Stancapiano edited comment on LUCENE-3167 at 8/31/11 9:13 PM:
-------------------------------------------------------------------

Hi Steven,

I send a new updated patch.

I added two new stamp properties in the build-manifest macro (start.touch.time and end.touch.time)
that log the milliseconds of the process.

War files in OSGI are worked as the jar files. If the OSGI repository has functionalities
to work with containers, it takes the informations directly by the bundle. The MANIFEST.MF
file doesn't include informations about containers.

I added the bnd library from http://dl.dropbox.com/u/2590603/bnd/biz.aQute.bndlib.jar (actually
in the dropbox there is the only version for ant. See: http://www.aqute.biz/Bnd/Download)
and added it to the ant classpath how for the 'generate-maven-artifacts' target.

Here the responses to the tasks:

1 - checked the box to grant the Apache license.

2 - Renamed the patch according the convetion.

3 - Deleted the bnd configuration for solr. Now only the build-manifest macro declared in
the common-build.xml of lucene project is used. But I was forced to declare the attributes
@{title} and @{implementation.title} as properties inside the build-manifest macro, else they
didn't seen in the external file lucene.bnd.

4 - I see the correct value of ${bnd.project.description} because the property is created
through the configuration : <xmlproperty file="${ant.file}" collapseAttributes="true" prefix="bnd"/>
inside the build-manifest macro. Maybe I didn't added all in the previous patch. Let me know
if the problem persists.

5 - I excluded the DSTAMP, TSTAMP, and TODAY properties by the bnd configuration through the
property: -removeheaders . The main problem is that the bnd ant task takes all the ant properties
starting with an uppercased lecter and add them without ask. Should be a bnd property -inherit
(true/false) that tells if import the ant properties but it doesn't work. This problem is
signed in: https://github.com/bnd/bnd/issues/72. An other important thing is that the 'Name'
ant property declared in some build.xml is not accepted by the bnd ant task. In the bnd ant
task code there is an hard exception if the 'Name' property is found:

			if (header.equalsIgnoreCase("Name")) {
				error("Your bnd file contains a header called 'Name'. This interferes with the manifest
name section.");
				continue;
			}

So I was forced to rename the 'Name' property and its references in 'LuceneName'

6 - Added the ${user.name} property in the Implementation-Version manifest property

7 - Renamed the Bundle-DocUR property to Bundle-DocURL 

      was (Author: luca.stancaqpiano):
    Hi Steven,

I send a new updated patch.

I added two new stamp properties in the build-manifest macro (start.touch.time and end.touch.time)
that log the milliseconds of the process.

War files in OSGI are worked as the jar files. If the OSGI repository has functionalities
to work with containers, it takes the informations directly by the bundle. The MANIFEST.MF
file doesn't include informations about containers.

I added the bnd library from http://dl.dropbox.com/u/2590603/bnd/biz.aQute.bndlib.jar (actually
in the dropbox there is the only version for ant. See: http://www.aqute.biz/Bnd/Download)
and added it to the ant classpath how for the 'generate-maven-artifacts' target.

Here the reposts to the tasks:

1 - checked the box to grant the Apache license.

2 - Renamed the patch according the convetion.

3 - Deleted the bnd configuration for solr. Now only the build-manifest macro declared in
the common-build.xml of lucene project is used. But I was forced to declare the attributes
@{title} and @{implementation.title} as properties inside the build-manifest macro, else they
didn't seen in the external file lucene.bnd.

4 - I see the correct value of ${bnd.project.description} because the property is created
through the configuration : <xmlproperty file="${ant.file}" collapseAttributes="true" prefix="bnd"/>
inside the build-manifest macro. Maybe I didn't added all in the previous patch. Let me know
if the problem persists.

5 - I excluded the DSTAMP, TSTAMP, and TODAY properties by the bnd configuration through the
property: -removeheaders . The main problem is that the bnd ant task takes all the ant properties
starting with an uppercased lecter and add them without ask. Should be a bnd property -inherit
(true/false) that tells if import the ant properties but it doesn't work. This problem is
signed in: https://github.com/bnd/bnd/issues/72. An other important thing is that the 'Name'
ant property declared in some build.xml is not accepted by the bnd ant task. In the bnd ant
task code there is an hard exception if the 'Name' property is found:

			if (header.equalsIgnoreCase("Name")) {
				error("Your bnd file contains a header called 'Name'. This interferes with the manifest
name section.");
				continue;
			}

So I was forced to rename the 'Name' property and its references in 'LuceneName'

6 - Added the ${user.name} property in the Implementation-Version manifest property

7 - Renamed the Bundle-DocUR property to Bundle-DocURL 
  
> Make lucene/solr a OSGI bundle through Ant
> ------------------------------------------
>
>                 Key: LUCENE-3167
>                 URL: https://issues.apache.org/jira/browse/LUCENE-3167
>             Project: Lucene - Java
>          Issue Type: New Feature
>         Environment: bndtools
>            Reporter: Luca Stancapiano
>         Attachments: 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.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message