Hi Ate,

Thanks for the suggestion. That makes sense.
So, I think I should do the following:
- Add exclusion(s) on commons-beanutils-core after looking into all transitive 
dependencies.
- Add commons-beanutils dependency explicitly wherever used.
- Check all for any problematic transitive dependencies.

I'll create an issue for this and fix it soon.

Cheers,

Woonsan





>________________________________
> From: Ate Douma <[email protected]>
>To: Jetspeed Developers List <[email protected]> 
>Sent: Tuesday, October 8, 2013 3:55 AM
>Subject: Re: Build error in trunk due to conflicting commons-beanutils 
>depenencies
> 
>
>On 10/07/2013 08:27 PM, Woonsan Ko wrote:
>> Hi,
>>
>> I've met a weird build error from the fresh JS-2 trunk today (Maven3/JDK1.6):
>>
>> ...
>>
>> INFO] Jetspeed-2 Portal Site ............................ SUCCESS [0.973s]
>> [INFO] Jetspeed-2 Portal Components ...................... FAILURE [2.046s]
>> ...
>> [INFO] 
>> ------------------------------------------------------------------------
>> [INFO] BUILD FAILURE
>> [INFO] 
>> ------------------------------------------------------------------------
>>
>> ...
>>
>> [ERROR] Failed to execute goal 
>> org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile 
>> (default-compile) on project jetspeed-portal: Compilation failure: 
>> Compilation failure:
>> [ERROR] 
>> /Users/woonsan/workspace/portal/jetspeed-2-TRUNK/components/jetspeed-portal/src/main/java/org/apache/jetspeed/services/rest/JaxrsServiceValve.java:[55,23]
>>  cannot find symbol
>> [ERROR] symbol  : method invokeStaticMethod(java.lang.Class<capture#657 of 
>> ?>,java.lang.String,java.lang.Object[])
>> [ERROR] location: class org.apache.commons.beanutils.MethodUtils
>>
>> ...
>>
>>
>> So, I ran `mvn dependency:tree -Dincludes=commons-beanutils' in the 
>> components/jetspeed-portal module folder:
>>
>>
>> [INFO] org.apache.portals.jetspeed-2:jetspeed-portal:jar:2.2.3-SNAPSHOT
>> [INFO] +- 
>> org.apache.portals.jetspeed-2:jetspeed-registry:jar:2.2.3-SNAPSHOT:compile
>> [INFO] |  \- 
>> org.apache.portals.jetspeed-2:jetspeed-serializer:jar:2.2.3-SNAPSHOT:compile
>> [INFO] |     \- org.apache.ddlutils:ddlutils:jar:1.0:compile
>> [INFO] |        \- commons-betwixt:commons-betwixt:jar:0.8:compile
>> [INFO] |           \- 
>> commons-beanutils:commons-beanutils-core:jar:1.7.0:compile
>> [INFO] \- org.apache.velocity:velocity-tools:jar:1.3:compile
>> [INFO]    \- commons-beanutils:commons-beanutils:jar:1.8.0:compile
>>
>>
>>
>> The above clearly shows it depends on two different versions of 
>> commons-beanutils. The API, MethodUtils#invokeStaticMethod() [1]
>> has been introduced since 1.8.I don't know why/when this problem started 
>> staying here, but I think we should add the explicit dependencies in 
>> components/jetspeed-portal/pom.xml like the following:
>>
>>      <dependency>
>>        <groupId>commons-beanutils</groupId>
>>        <artifactId>commons-beanutils</artifactId>
>>      </dependency>
>>      <dependency>
>>        <groupId>commons-beanutils</groupId>
>>        <artifactId>commons-beanutils-core</artifactId>
>>      </dependency>
>>
>>
>> In my local testing, this solves the problem. So I'll add commit it soon.
>> Please let me know if there's anything I missed.
>>
>We should only need/depend on commons-beanutils artifact, not ALSO on 
>commons-beanutils-core. The first already contains 'everything' while the 
>second 
>one is a trimmed down version excluding commons-beanutils-bean-collections [1].
>So I would suggest that the transitive dependency on commons-beanutils-core 
>should be excluded from ddlutils in jetspeed-serializer (and the 
>commons-beanutils then should be explicitly added as an dependency there as 
>well).
>
>I also would run a full mvn:dependency:tree on the whole of modules, to make 
>sure no other component is (transitively) depending on commons-beanutils-core 
>either.
>
>Ate
>
>[1] 
>http://commons.apache.org/proper/commons-beanutils/index.html#BeanUtils_Core_And_Modules
>
>
>>
>> Thanks!
>>
>> Regards,
>>
>> Woonsan
>>
>>
>> [1] 
>> http://commons.apache.org/proper/commons-beanutils/javadocs/v1.8.3/apidocs/org/apache/commons/beanutils/MethodUtils.html#invokeStaticMethod%28java.lang.Class,%20java.lang.String,%20java.lang.Object[]%29
>>
>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: [email protected]
>For additional commands, e-mail: [email protected]
>
>
>
>
>

Reply via email to