atom feed14 messages in org.apache.incubator.jena-devRe: Trouble Building Under Eclipse
FromSent OnAttachments
Rob VesseJun 4, 2015 6:22 am 
ajs...@virginia.eduJun 4, 2015 6:30 am 
Andy SeaborneJun 4, 2015 6:51 am 
Andy SeaborneJun 5, 2015 8:04 am 
Stian Soiland-ReyesJun 5, 2015 7:19 pm 
Andy SeaborneJun 8, 2015 6:21 am 
ajs...@virginia.eduJun 8, 2015 6:26 am 
Andy SeaborneJun 8, 2015 12:11 pm 
ajs...@virginia.eduJun 9, 2015 8:26 am 
Andy SeaborneJun 10, 2015 2:47 am 
ajs...@virginia.eduJun 11, 2015 6:01 pm 
Andy SeaborneJun 12, 2015 1:40 am 
ajs...@virginia.eduJun 14, 2015 12:29 pm 
Rob VesseJun 16, 2015 3:43 am 
Subject:Re: Trouble Building Under Eclipse
From:Stian Soiland-Reyes (sta@apache.org)
Date:Jun 5, 2015 7:19:06 pm
List:org.apache.incubator.jena-dev

Yes, you would need to keep the jena-guava project closed so you get the Maven-built shaded jar on the classpath, which has the shaded package name, otherwise you will just see the upstream Guava through Eclipse's project sharing.

The package name is not shaded for OSGi, it is easy to define private packages there. It is shaded to avoid duplicate version mismatches against other dependencies with "the real guava", e.g. Hadoop which as you know has an ancient Guava.

It might be good to keep it out of the normal build/release cycle, then you would get the jena-guava shade from Maven central, which should only change when we upgrade Guava, in which case it could be re-enabled in the SNAPSHOT build or vote+released as a separate artifact (which might be slightly odd as it contains no Jena contributions beyond the package name) On 4 Jun 2015 14:33, "ajs@virginia.edu" <ajs@virginia.edu> wrote:

I have had this problem since I began tinkering. The only solution I have found is make sure that the jena-shaded-guava project is never open when any project that refers to types therein is open. This isn't much of a burden, and I suppose it has something to do with the Maven magic that is going on inside jena-shaded-guava.

I'm not totally clear as to why Jena shades Guava into its own namespace-- is it to avoid OSGi-exporting Guava packages? (We have something like that going on in another project on which I work.)

On Jun 4, 2015, at 9:22 AM, Rob Vesse <rve@dotnetrdf.org> wrote:

Folks

Recently I've been having a lot of trouble getting Jena to build in Eclipse which seems to be due to the use of the Shade plugin to Shade Guava. Any module that has a reference to the shaded classes ends refuses to build with various variations of the following error:

java.lang.NoClassDefFoundError: org/apache/jena/ext/com/google/common/cache/RemovalNotification

Anybody else been having this issue? If so how did you resolve it?

Sometimes cleaning my workspace and/or doing a mvn package at the command line seems to help but other times it doesn't