Re: Clean build of 1.5.x does not work

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

Re: Clean build of 1.5.x does not work

Willem.Jiang
Administrator
Done, it should be fix now.

Willem Jiang wrote:

> Hi Ivan,
>
> Maven will decide the version which is nearest to the root.
> Yes we have the cycle dependency here.
>
> I just filled a JIRA[1], I will commit your patch to fix it.
>
> Thanks for point it out.
>
> [1] https://issues.apache.org/activemq/browse/CAMEL-1182
>
> Willem
>
> Ivan Dubrov wrote:
>> Willem Jiang wrote:
>>> Hi,
>>>
>>> org.apache.activemq:activemq-camel:jar:5.2.0 depends on camel 1.5.0.
>>> So we don't have the cycle dependency in camel-jms.
>>>  
>> I think, Maven choses 1.5.1-SNAPSHOT instead of 1.5.0 for some reason.
>> The  mvn dependency:resolve (from the campaign/camel-jms) has the
>> following line in the output:
>>
>> [INFO]    org.apache.camel:camel-jms:jar:1.5.1-SNAPSHOT:test
>>
>>> Did you build the camel 1.5.x branch from the root ?
>>>  
>> Yes, I build it from the root.
>>
>> The problem disappears if I have camel-jms:1.5.1-SNAPSHOT in my local
>> Maven repository (so if I add exclusion, install the camel-jms to the
>> repository and then remove the exclusion -- the build works). It does
>> not work when I build it and I have no camel-jms:1.5.1-SNAPSHOT in the
>> local repo.
>>
>> Looking at these lines in the failed output:
>>
>> 1) org.apache.camel:camel-jms:bundle:1.5.1-SNAPSHOT
>> 2) org.apache.activemq:activemq-camel:jar:5.2.0
>> 3) org.apache.camel:camel-jms:jar:1.5.1-SNAPSHOT
>>
>>
>> It seems to me the that problem is "bundle" in 1) line vs "jar" in 3)
>> line, so Maven thinks that these two are different and does not fulfill
>> the 1.5.1-SNAPSHOT dependency from the reactor. As a result, it tries to
>> get it from the repository.
>>
>> You can try removing camel-jms from the local Maven2 repository and try
>> building the project to reproduce the issue.
>>> Willem
>>>
>>> Ivan Dubrov wrote:
>>>  
>>>> Hi,
>>>>
>>>> Currently Apache Camel 1.5.x branch could not be built in a clean
>>>> environment. The build fails with
>>>>
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [ERROR] BUILD ERROR
>>>> [INFO]
>>>> ------------------------------------------------------------------------
>>>> [INFO] Failed to resolve artifact.
>>>>
>>>> Missing:
>>>> ----------
>>>> 1) org.apache.camel:camel-jms:jar:1.5.1-SNAPSHOT
>>>>
>>>>   Try downloading the file manually from the project website.
>>>>
>>>>   Then, install it using the command:
>>>>       mvn install:install-file -DgroupId=org.apache.camel
>>>> -DartifactId=camel-jms -Dversion=1.5.1-SNAPSHOT -Dpackaging=jar
>>>> -Dfile=/path/to/file
>>>>
>>>>   Alternatively, if you host your own repository you can deploy the file
>>>> there:
>>>>       mvn deploy:deploy-file -DgroupId=org.apache.camel
>>>> -DartifactId=camel-jms -Dversion=1.5.1-SNAPSHOT -Dpackaging=jar
>>>> -Dfile=/path/to/file -Durl=[url] -DrepositoryId=[id]
>>>>
>>>>   Path to dependency:
>>>>       1) org.apache.camel:camel-jms:bundle:1.5.1-SNAPSHOT
>>>>       2) org.apache.activemq:activemq-camel:jar:5.2.0
>>>>       3) org.apache.camel:camel-jms:jar:1.5.1-SNAPSHOT
>>>>
>>>> ----------
>>>> 1 required artifact is missing.
>>>>
>>>> for artifact:
>>>>   org.apache.camel:camel-jms:bundle:1.5.1-SNAPSHOT
>>>>
>>>> from the specified remote repositories:
>>>>   apache.snapshots (http://people.apache.org/repo/m2-snapshot-repository),
>>>>   guiceyfruit.release
>>>> (http://guiceyfruit.googlecode.com/svn/repo/releases/),
>>>>   central (http://repo1.maven.org/maven2)
>>>>
>>>>
>>>> The workaround is to add an exclusion to the activemq-camel dependency
>>>> in the camel-jms component pom.xml:
>>>>
>>>>
>>>>     <dependency>
>>>>       <groupId>org.apache.activemq</groupId>
>>>>       <artifactId>activemq-camel</artifactId>
>>>>       <scope>test</scope>
>>>>       <exclusions>
>>>>         <exclusion>
>>>>           <groupId>org.springframework</groupId>
>>>>           <artifactId>spring</artifactId>
>>>>         </exclusion>
>>>>       </exclusions>
>>>>     </dependency>
>>>>
>>>>
>>>> Should I create JIRA issue for this?
>>>>
>>>>    
>>>  
>>
>
>