Hi Pascal, Cameleers,
let me have a stab at it tomorrow, but baring that yeah I agree -- we
don't have the resources to maintain such an example perhaps it would
be best to remove it...

zoran

On Mon, May 7, 2018 at 9:09 PM, Pascal Schumacher
<pascalschumac...@gmx.net> wrote:
> The AS2 related failure is gone! :)
>
> https://builds.apache.org/view/C/view/Apache%20Camel/job/Camel/job/master/284/console
>
> Sadly the build remains broken due because of the recently added
> camel-example-ceylon:
>
> [ERROR] Failed to execute goal
> org.ceylon-lang:ceylon-maven-plugin:1.3.3:import-dependency (dependency) on
> project camel-example-ceylon: Cannot import module
> maven:org.apache.camel.camel-core/2.22.0-SNAPSHOT: Jar file
> /home/jenkins/jenkins-slave/workspace/Camel_master-CIGY56HHEDNGVJBWJRRHBZ64GKNJTCSYDKOPJS46W5IZTMAS3I2Q/camel-core/target/classes
> is a directory (must be a file) -> [Help 1]
> org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute
> goal org.ceylon-lang:ceylon-maven-plugin:1.3.3:import-dependency
> (dependency) on project camel-example-ceylon: Cannot import module
> maven:org.apache.camel.camel-core/2.22.0-SNAPSHOT
>
> Despite numerous tries (and already some hacky commits) we haven't been able
> to fix this.
>
> At this point I suggest we revert this addition.
>
> Are there any objections?
>
> -Pascal
>
> Am 07.05.2018 um 19:27 schrieb Pascal Schumacher:
>>
>> Hi Zoran,
>>
>> great work and great explanation, thank you very much! :)
>>
>> It now works for me locally.
>>
>> -Pascal
>>
>> Am 07.05.2018 um 11:52 schrieb Zoran Regvart:
>>>
>>> Hi Cameleers,
>>> I think I've found the core issue and committed a solution, we'll see
>>> how the build goes.
>>>
>>> The issue was that we were using <classifier> to reference a javadoc
>>> dependency, whereas we should be using <type>. I think when a
>>> multi-module Maven build is run without the goal that produces the
>>> artifact the <classifier> resolves the dependency as pointing to the
>>> modules `target/classes` directory instead of the artifact that is
>>> previously built, cached or available in a remote repository. This
>>> changes if the artifact is already present in the Maven reactor, and
>>> then it points to the artifact built in the target directory. And
>>> again it changes if <classifier> is switched with <type> to resolve
>>> from local repository or, I would assume, from remote repository.
>>>
>>> I could see this when running `mvn -X install` and `mvn -X test` -
>>> that would fail; in `components/camel-as2` directory. The first would
>>> output:
>>>
>>> [DEBUG] Adding project path
>>>
>>> file:/.../components/camel-as2/camel-as2-api/target/camel-as2-api-2.22.0-SNAPSHOT-javadoc.jar
>>>
>>> And the second would output:
>>>
>>> [DEBUG] Adding project path
>>> file:/.../components/camel-as2/camel-as2-api/target/classes/
>>>
>>> This changed when I changed the <classifier> to a <type> and now when
>>> I run `mvn test` the javadoc dependency is picked up from my local
>>> repository:
>>>
>>> [DEBUG] Adding project path
>>>
>>> file:/.../.m2/repository/org/apache/camel/camel-as2-api/2.22.0-SNAPSHOT/camel-as2-api-2.22.0-SNAPSHOT-javadoc.jar
>>>
>>> I've changed all components that had <classifier>javadoc</classifier>
>>> to <type>javadoc</type>, I hope this helps :)
>>>
>>> zoran
>>
>>
>



-- 
Zoran Regvart

Reply via email to