felix-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stuart McCulloch <mccu...@gmail.com>
Subject Re: maven-bundle-plugin has issues with maven3...
Date Mon, 11 Jul 2011 15:35:03 GMT

On 11 Jul 2011, at 15:57, Markus Joschko wrote:

> On Mon, Jul 11, 2011 at 4:43 PM, Stuart McCulloch <mcculls@gmail.com> wrote:
>> On 11 Jul 2011, at 15:37, Markus Joschko wrote:
>> 
>>> On Mon, Jul 11, 2011 at 4:30 PM, Stuart McCulloch <mcculls@gmail.com> wrote:
>>>> On 11 Jul 2011, at 15:20, Markus Joschko wrote:
>>>> 
>>>>> ...or my configuration is wrong.
>>>>> 
>>>>> I want to deploy a bundle to a remote obr. I have configured the
>>>>> bundle-plugin to use the default snapshot repository (which is a
>>>>> filebased repository). Everything worked fine with maven 2. Now that
I
>>>>> switched to maven 3
>>>> 
>>>> Was the only change that you switched from maven 2 to maven 3, or did you
also pick up a different version of the bundle plugin?
>>> 
>>> I now have maven2 and maven3 installed side by side and can deploy
>>> with maven2 but not with maven3.
>>> The maven-deploy plugin is locked to 2.6.0 and the maven-bundle-plugin is 2.3.5
>> 
>> We'll need a test project to investigate further, can you raise an issue under https://issues.apache.org/jira/browse/FELIX/component/12311143
and attach instructions, etc.
> 
> So there is no setting to specify from which repository to pick the bundle?

Looking at the code:

   http://svn.apache.org/repos/asf/felix/releases/maven-bundle-plugin-2.3.5/doc/site/xref/org/apache/felix/obrplugin/ObrDeploy.html#326
   http://svn.apache.org/repos/asf/felix/releases/maven-bundle-plugin-2.3.5/doc/site/xref/org/apache/felix/obrplugin/ObrUtils.html#116
   http://svn.apache.org/repos/asf/felix/releases/maven-bundle-plugin-2.3.5/doc/site/xref/org/apache/felix/obrplugin/ObrUpdate.html#122

it explicitly computes the location of the bundle in the local repository, and checks that
it exists - the only way I can see this working in Maven 2 is maybe it resolves and downloads
a copy of the artifact from the snapshot repository to the local repository (maybe it's related
to how Maven2 supports non-unique snapshots, whereas Maven3 doesn't https://cwiki.apache.org/MAVEN/maven-3x-compatibility-notes.html#Maven3.xCompatibilityNotes-NonuniqueSnapshotDeployments)

There are options to alter the computed/public URL: http://svn.apache.org/repos/asf/felix/releases/maven-bundle-plugin-2.3.5/doc/site/deploy-mojo.html
but nothing that would avoid the local repository check, since all the use-cases so far have
involved installing/deploying artifacts that already exist in the local repository. 

> I shy away a bit from condensing the pom to an example project as it is quite exhausting
but will do so if required.

Without an example project that recreates the issue it's hard to know a) exactly which part
of the code to fix/improve and b) whether that change truly resolves the original issue -
especially since I don't know what your POM looks like, what plugin executions it defines,
and in what order etc.

Of course patches are also welcome, some people find it easier to fix and test the plugin
locally rather than sanitise their existing POM.

>> Wrt. differences between Maven 2/3, M3 is much more strict about plugin isolation
so it may be that your current setup just worked by coincidence (and not design) in M2...
> 
> Could be.
> 
> 
>> 
>>> 
>>>> 
>>>>> I get the following error:
>>>>> 
>>>>> [INFO] --- maven-bundle-plugin:2.3.5:deploy (default-deploy) @ merge-service
---
>>>>> [INFO] LOCK file:///var/www/repository/repository.xml
>>>>> [INFO] Downloading repository.xml
>>>>> [INFO] Computed bundle uri:
>>>>> http://localhost/repository/com/etc/pp/merge-service/1.0-SNAPSHOT/merge-service-1.0-20110711.141141-8.jar
>>>>> [ERROR] file doesn't exist:
>>>>> file:/home/markus/.m2/repository/com/etc/pp/merge-service/1.0-SNAPSHOT/merge-service-1.0-20110711.141141-8.jar
>>>>> [INFO] Writing OBR metadata
>>>>> [INFO] Uploading repository.xml
>>>>> [INFO] UNLOCK file:///var/www/repository/repository.xml
>>>>> 
>>>>> The bundle plugin tries to retrieve the jar file from my local
>>>>> repository. However the maven deploy plugin has also picked up the
>>>>> snapshot repository and deployed the bundle in the snapshot repository
>>>>> and not in my local repository.
>>>>> That's different to maven2. When building with maven2 the bundle is
>>>>> deployed in my local and in my snapshot repository by the deploy
>>>>> plugin.
>>>>> No idea what has changed (maybe I miss some configuration here?), but
>>>>> for me it looks like the bundle plugin should pick up the bundle from
>>>>> the default deploy repository instead of the local repository?
>>>>> 
>>>>> Regards,
>>>>> Markus
>>>>> 
>>>>> ---------------------------------------------------------------------
>>>>> To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
>>>>> For additional commands, e-mail: users-help@felix.apache.org
>>>>> 
>>>> 
>>>> 
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
>>>> For additional commands, e-mail: users-help@felix.apache.org
>>>> 
>>>> 
>>> 
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
>>> For additional commands, e-mail: users-help@felix.apache.org
>>> 
>> 
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
>> For additional commands, e-mail: users-help@felix.apache.org
>> 
>> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
> For additional commands, e-mail: users-help@felix.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
For additional commands, e-mail: users-help@felix.apache.org


Mime
View raw message