ASM 5

12 views
Skip to first unread message

Paul Merlin

unread,
Jun 13, 2014, 4:40:24 AM6/13/14
to qi4j...@googlegroups.com
Gang,

FYI, I pushed some commits to the develop branch that upgrade ASM
dependency from 4.x to 5.x. Everything works as expected and this pave
the way for Java 8 support.

Cheers

/Paul

Niclas Hedhman

unread,
Jun 13, 2014, 9:56:12 AM6/13/14
to Paul Merlin, qi4j...@googlegroups.com
Should we fork a branch for Java 8?

Niclas




/Paul

--
You received this message because you are subscribed to the Google Groups "qi4j-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qi4j-dev+unsubscribe@googlegroups.com.
To post to this group, send email to qi4j...@googlegroups.com.
Visit this group at http://groups.google.com/group/qi4j-dev.
For more options, visit https://groups.google.com/d/optout.



--
Niclas Hedhman, Software Developer
河南南路555弄15号1901室。
http://www.qi4j.org - New Energy for Java

I live here; http://tinyurl.com/3xugrbk
I work here; http://tinyurl.com/6a2pl4j
I relax here; http://tinyurl.com/2cgsug

Paul Merlin

unread,
Jun 13, 2014, 10:06:03 AM6/13/14
to Niclas Hedhman, qi4j...@googlegroups.com
Niclas Hedhman a écrit :
Should we fork a branch for Java 8?
Now that ASM 5 is in place, the develop branch works for Java 7 _and_ Java 8.

Qi4j cannot be built using Java 8 yet because of some obscure Jaccoco error but this will be sorted out one day or the other (https://qi4j.ci.cloudbees.com/job/qi4j-sdk.develop.weekly.tests.jdk8-open/lastFailedBuild/).

However, I can see oportunities coming if we adopt Java 8 (abandon Java 7). For example, we largely use Iterables as "single use" iterables, which are embodied in Stream starting from Java 8. In other words, Iterable semantic is that they can be traversed several times although Stream semantic is that they can be traversed once only. We actually use Iterables with the Stream semantic.

Not sure if this is valuable though. Maybe too early.

So, I don't think we need a Java 8 branch right now.

Cheers

/Paul

Jiri Jetmar

unread,
Jul 9, 2014, 4:04:08 PM7/9/14
to Paul Merlin, Niclas Hedhman, qi4j...@googlegroups.com
Hi guys,

I taked a brief look on that jacoco issue. The exception is :

Caused by: java.lang.NoSuchFieldException: $jacocoAccess
    at java.lang.Class.getField(Class.java:1690)


The solution seems to be to use a specific jacoco version, and to point to that version directly in the gradle build scripts, e.g. :

 apply plugin: 'jacoco'

      jacoco {
          toolVersion = "0.7.0.201403182114"
      }
 
Taken from here :

http://forums.gradle.org/gradle/topics/jacoco_java_8_support

I;m thinking to use Java 8 with Qi4j in the hope to clean a bit the code e..g by the usage of Lamda as some expressions are pretty noisy now. Do you see any further traps that has to be considered before using Java 8 ?

Thank you.

Cheers,
Jiri




--
You received this message because you are subscribed to the Google Groups "qi4j-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qi4j-dev+u...@googlegroups.com.

Paul Merlin

unread,
Jul 10, 2014, 4:49:35 AM7/10/14
to qi4j...@googlegroups.com, Jiri Jetmar
Hey Jiri,

Jiri Jetmar a écrit :

I;m thinking to use Java 8 with Qi4j in the hope to clean a bit the code e..g by the usage of Lamda as some expressions are pretty noisy now. Do you see any further traps that has to be considered before using Java 8 ?
Qi4j is already usable from Java 8, the jacoco issue is only about building the Qi4j SDK with Java 8.

Jiri Jetmar

unread,
Jul 10, 2014, 6:40:04 AM7/10/14
to Paul Merlin, qi4j...@googlegroups.com
Hi Paul, 

thx for the info and yes, until now I do not had any issues using Java 8 & Qi4j. Pretty cool ! :-)

Cheers, 
Jiri
Reply all
Reply to author
Forward
0 new messages