FYI I can build Camel trunk fine with IBM JDK 1.6.0 on Linux. So least that platform works :)
janstey@duffman:/x1/asf/camel/trunk$ mvn --version Apache Maven 3.0.2 (r1056850; 2011-01-08 21:28:10-0330) Java version: 1.6.0, vendor: IBM Corporation Java home: /opt/ibm-java-i386-60/jre Default locale: en_CA, platform encoding: UTF-8 OS name: "linux", version: "2.6.32-27-generic", arch: "x86", family: "unix" On Wed, Jun 29, 2011 at 11:49 AM, Claus Ibsen <claus.ib...@gmail.com> wrote: > Its likely not only IBM JDKs. > HP-UX has been know to have compiling issues as well. > > Well we can always blame sun for creating the crappy confusing generics. > I guess the compiler engineers dont even get generics right as well. > > The work around I have seen was to add a type cast to the super type > ProcessorDefinition def = (ProcessorDefinition) processorType > > And then do that instacenof check afterwards. So something like > > > ProcessorDefinition def = (ProcessorDefinition) processorType; > if (def instanceof LoadBalanceDefinition) { > > > > On Wed, Jun 29, 2011 at 4:05 PM, bvahdat <babak.vah...@swissonline.ch> > wrote: > > Hi Claus, > > > > I suspect xiangqiuzhao uses the IBM-JDK6 which has this issue, > @xiangqiuzhao > > is this really the case? > > I used to experience exactly the same problem while using IBM-JDK, > however > > since moving to SUN-JDK the problem is resolved for me. > > > > On my box if I set JAVA_HOME to IBM's JDK, then 'mvn clean compile' on > > 'camel-core' comes up with (same as for xiangqiuzhao): > > > > [ERROR] Failed to execute goal > > org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default > > compile) on project camel-core: Compilation failure > > [ERROR] > > > \Data\eclipse-workspace\camel-trunk\camel-core\src\main\java\org\apache\camel\model\LoadBalanceDefinition.java:[134,16] > > inconvertible types > > [ERROR] found : > org.apache.camel.model.ProcessorDefinition<capture#945 > > of ?> > > [ERROR] required: org.apache.camel.model.LoadBalanceDefinition > > > > Where 'mvn -version' says: > > Apache Maven 3.0.3 (r1075438; 2011-02-28 18:31:09+0100) > > Maven home: P:\My Documents\dev\env\apache-maven-3.0.3\bin\.. > > Java version: 1.6.0, vendor: IBM Corporation > > Java home: C:\Program Files\IBM\SDP75\jdk\jre > > Default locale: de_CH, platform encoding: Cp1252 > > OS name: "windows xp", version: "5.1 build 2600 service pack 3", arch: > > "x86", family: "windows" > > > > If one would change the line 134 on LoadBalanceDefinition from: > > if (processorType instanceof LoadBalanceDefinition) { > > > > To: > > if (LoadBalanceDefinition.class.isInstance(processorType)) { > > > > Then the compilation would pass on this class. I didn't find anything > about > > this issue on http://camel.apache.org/does-camel-work-on-ibms-jdk.html > > > > Regards, Babak > > PS: actually there're more compilation issues while using IBM-JDK > > > > -- > > View this message in context: > http://camel.465427.n5.nabble.com/why-i-building-camel2-7-2-use-maven-install-error-tp4532013p4535242.html > > Sent from the Camel - Users mailing list archive at Nabble.com. > > > > > > -- > Claus Ibsen > ----------------- > FuseSource > Email: cib...@fusesource.com > Web: http://fusesource.com > Twitter: davsclaus, fusenews > Blog: http://davsclaus.blogspot.com/ > Author of Camel in Action: http://www.manning.com/ibsen/ > -- Cheers, Jon --------------- FuseSource Email: j...@fusesource.com Web: fusesource.com Twitter: jon_anstey Blog: http://janstey.blogspot.com Author of Camel in Action: http://manning.com/ibsen