maven-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Hervé BOUTEMY <herve.bout...@free.fr>
Subject Re: [DISCUSS] Java version requirement for Mavan 3.4.x
Date Wed, 02 Dec 2015 07:30:12 GMT
from source code point of view, you don't need to change anything to compile 
with JDK 8, true

But what we showed with Arnaud in our ApacheCON demo (sorry to tell a lot 
about it, but that was the topic...), JDK 8 compiler may introduce Java 8 API 
references into bytecode from source that don't have any JDK 8 reference
See bonus demo [1] for a demo :)

This is the first time in JDK history that such a behaviour happens: using JDK 
8 instead of JDK 7 for launching Maven/javac does not give same result (unless 
using toolchains, of course).

That's why I currently fear with JDK 8 that people will get some unexpected 
failures. And during the conf, for a few attendees, this demo gave a "now I 
understand what happened to me on one of my builds..." reaction

Regards,

Hervé

[1] https://github.com/MavenDemo/java-evolving-en/blob/master/toolchains/bonus.sh

Le mardi 1 décembre 2015 08:10:51 Kristian Rosenvold a écrit :
> Technically, JDK8 is entirely undramatic for maven; I'm having a hard
> time understanding why it should trigger any api changes or any other
> "4.0" reasons.
> 
> I cannot make heads or tails of the supposed versioning policy, the
> language is too convoluted for me or I'm just not smart enough.
> 
> If we are to stay aligned with current practice, jdk8 should be a
> minor release. As for the actual topic of "should" we switch, i'm
> always in favour of moving forwards. But not in any religious sense.
> 
> 
> Kristian
> 
> 2015-12-01 6:59 GMT+01:00 Mirko Friedenhagen <mfriedenhagen@gmail.com>:
> > +1 for Java 8 and the version bump to 4.x,.communicates the change more
> > clearly.
> > 
> > Regards
> > Mirko
> > --
> > Sent from my mobile
> > On Nov 30, 2015 23:44, "Stephen Connolly"
> > <stephen.alan.connolly@gmail.com>
> > 
> > wrote:
> >> I have no issues if we want to call the next version 4.0.x rather than
> >> 3.4.x
> >> 
> >> In my view there are some advantages to using the 4.0.x version number as
> >> a
> >> Java 8 bump... namely that leaves the modelVersion 5.0 changes to Maven
> >> 5.0
> >> 
> >> And let's face it, it will just be less confusing to users to say "To
> >> build
> >> a modelVersion 5.0 pom you need Maven 5"
> >> 
> >> So if there is strong interest in jumping to Java 8 perhaps we just bite
> >> the bullet and jump to Maven 4.0 with Java 8 now and then we can start
> >> the
> >> model version 5.0 debate in earnest as we plan the features for Maven 5.0
> >> ;-)
> >> 
> >> -Stephen
> >> 
> >> On 30 November 2015 at 22:25, Jason van Zyl <jason@takari.io> wrote:
> >> > I agree that jumping to Java 8 would be unwise. I think we can wait
> >> > until
> >> > 4.x. Don’t get me wrong, I’d prefer to use Java 8 and I do for almost
> >> > everything else but I don’t think there’s any dire rush.
> >> > 
> >> > > On Nov 30, 2015, at 2:00 PM, Michael Osipov <michaelo@apache.org>
> >> 
> >> wrote:
> >> > > Am 2015-11-30 um 22:18 schrieb Stephen Connolly:
> >> > >> Picking up from
> >> 
> >> http://mail-archives.apache.org/mod_mbox/maven-dev/201511.mbox/%3CCA%2BnP
> >> nMyjogmqRweYbxLuULLB9ve2P6MPcQuH%2BPkxcNn-oN4GPg%40mail.gmail.com%3E>>

> >> > >> (and my follow up to that but archive.apache.org is being a tad
> >> > >> slow)
> >> > >> 
> >> > >> Here is our policy:
> >> > >> 
> >> > >> The development line of Maven core should require a minimum JRE
> >> 
> >> version
> >> 
> >> > >>> that is no older than 18 months after the end of Oracle's
public
> >> > 
> >> > updates
> >> > 
> >> > >>> for that JRE version at the time that the first version of
the
> >> > 
> >> > development
> >> > 
> >> > >>> line was released, but may require a higher minimum JRE version
if
> >> > 
> >> > other
> >> > 
> >> > >>> requirements dictate a higher JRE version
> >> > >> 
> >> > >> (Source:
> >> https://cwiki.apache.org/confluence/display/MAVEN/Version+number+policy
> >> 
> >> > )
> >> > 
> >> > >> OK, so it's a draft policy... but we've all been silent on the
> >> > >> draft,
> >> 
> >> so
> >> 
> >> > >> lazy consensus!
> >> > >> 
> >> > >> Now in http://www.oracle.com/technetwork/java/javase/eol-135779.html
> >> > 
> >> > they
> >> > 
> >> > >> state:
> >> > >> 
> >> > >> after April 2015, Oracle will not post further updates of Java
SE 7
> >> > >> to
> >> > 
> >> > its
> >> > 
> >> > >>> public download sites
> >> > >> 
> >> > >> So per our (draft) version number policy, we can keep Java 7 as
the
> >> > >> baseline :-( or we can choose to upgrade code to Java 8 (because
we
> >> > 
> >> > want to
> >> > 
> >> > >> use lambdas... there's a requirement)
> >> > >> 
> >> > >> 
> >> > >> So assuming we bump the master branch of Maven core to 3.4.0,
what
> >> 
> >> Java
> >> 
> >> > >> version do we want to use as the baseline?
> >> > >> 
> >> > >> There are thankfully only two options:
> >> > >> 
> >> > >> Java 7
> >> > >> 
> >> > >>   + Not actually changing things
> >> > >>   + May make it easier to drive adoption
> >> > >>   - Still can't use newer language features in core
> >> > >>   - Java 7 is EOL and it may get harder for developers to source
> >> > >>   JDKs
> >> 
> >> to
> >> 
> >> > >> test and develop against
> >> > > 
> >> > > Bumping Java requirements again in minor (!) release is insane. I
am
> >> > 
> >> > against that, regardless Oracle has set this EoL or not. Folks at
> >> > Commons
> >> > are doing the right this. Bump requirement with a major not a minor.
> >> > Moreover, we have too many components which have been neglected for
> >> 
> >> years,
> >> 
> >> > too many outstanding issues in JIRA. E.g., Doxia, I try to fix some
> >> > once
> >> 
> >> in
> >> 
> >> > a while but there a too few of us to take care of the entire Maven
> >> > ecosystem.
> >> > 
> >> > > I would rather see us to bringing the entire system on a decent level
> >> > 
> >> > before we make a big leaps which Java. It does not make sense to be to
> >> 
> >> put
> >> 
> >> > Maven on the fast lane but let other components suffer at the edge of
> >> > the
> >> > road.
> >> > 
> >> > > Michael
> >> > > 
> >> > > 
> >> > > ---------------------------------------------------------------------
> >> > > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> >> > > For additional commands, e-mail: dev-help@maven.apache.org
> >> > 
> >> > Thanks,
> >> > 
> >> > Jason
> >> > 
> >> > ----------------------------------------------------------
> >> > Jason van Zyl
> >> > Founder, Takari and Apache Maven
> >> > http://twitter.com/jvanzyl
> >> > http://twitter.com/takari_io
> >> > ---------------------------------------------------------
> >> > 
> >> > Be not afraid of growing slowly, be only afraid of standing still.
> >> > 
> >> >  -- Chinese Proverb
> >> > 
> >> > ---------------------------------------------------------------------
> >> > To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> >> > For additional commands, e-mail: dev-help@maven.apache.org
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
> For additional commands, e-mail: dev-help@maven.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org


Mime
View raw message