You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by Stephen Connolly <st...@gmail.com> on 2014/01/13 12:24:51 UTC

[DISCUSS] Maven JVM Runtime requirements

We are gearing up for the release of Maven 3.2.0... wherein we will drop
support for Java 1.5 as the runtime that Maven requires (we will still
support compiling and running tests with older JVMs via toolchains though)

This means we will effectively enter a realm of "1 and 1 back"

Do we want to switch to this as a policy?

i.e. something like: "When a new Major/Minor line is released, the JVM
requirements for running Maven will be the latest current Oracle JVM
version and the previous Oracle JVM version or any JVM version compatible
with such"

Which could mean that Maven 4.0 would be Java 7 as a minimum requirement
(assuming Java 8 were released before we get to our 4.0)

(I know Chris is going to chime in and point out that IBM is still
supporting various versions of Java on different platforms... and RedHat
has pledged to support OpenJDK 6 as long as its customers want/pay it to)

Anyway... just some thoughts

P.S.
  I would really love to be able to use the Java 8 features in Maven
core... "1 and 1 back" still leaves us until Java 9 before we can do
that... which is a good 2-3 years away from now... unless somebody
implements a retroweaver to Java 7 (which at least stands a good chance),
hence why I would like to drive us to Java 7 as a minimum once Java 8 is
released.

Re: [DISCUSS] Maven JVM Runtime requirements

Posted by Lennart Jörelid <le...@gmail.com>.
There is a fine line between stability and missing out on good, newer
features.
IMHO, requiring Maven to use code/language features no newer than those of
a JDK twice
deprecated by Oracle lands on the "missing out on good newer features".

Without listing any nice-to-have features in more recent languages, I would
argue that Maven's
implementation would benefit from a policy along the lines of "Maven should
support the current
Oracle JDK major version and the major previous version" (although better
phrased by Stephen
earlier in this thread).

Having said that ...

The other option is to infer modularization on the classloading level
today, which is a nice
(although potentially rather complex) structural exercise that prepares us
for JDK modularity
released in what is now believed to be JDK 9. Classloading-level modularity
could enable us
to develop and load only JDK X-compliant modules at runtime, permitting
folks that would like
to support elder JDK versions to implement parts of Maven in elder Java
versions.

Java Modularity today is more or less synonymous with OSGi or JBoss
Modules, both of which
would infer some rather strict technical structural demands into Maven's
codebase - so that path
may should not be one taken lightly.



2014/1/13 Stephen Connolly <st...@gmail.com>

> yes I know... but that doesn't get the full Java 8 API... which brings the
> fun of animal sniffer back in play... I'd rather be able to just rely on
> Java 8 the full shebang! That ain't happening before Java 8 is released...
> if we'd rather a policy of "1 and 0 back" I'd be happy with that too!
>
>
> On 13 January 2014 12:07, Kristian Rosenvold
> <kr...@gmail.com>wrote:
>
> > https://github.com/orfjackal/retrolambda
> >
> >
> > 2014/1/13 Stephen Connolly <st...@gmail.com>
> >
> > > We are gearing up for the release of Maven 3.2.0... wherein we will
> drop
> > > support for Java 1.5 as the runtime that Maven requires (we will still
> > > support compiling and running tests with older JVMs via toolchains
> > though)
> > >
> > > This means we will effectively enter a realm of "1 and 1 back"
> > >
> > > Do we want to switch to this as a policy?
> > >
> > > i.e. something like: "When a new Major/Minor line is released, the JVM
> > > requirements for running Maven will be the latest current Oracle JVM
> > > version and the previous Oracle JVM version or any JVM version
> compatible
> > > with such"
> > >
> > > Which could mean that Maven 4.0 would be Java 7 as a minimum
> requirement
> > > (assuming Java 8 were released before we get to our 4.0)
> > >
> > > (I know Chris is going to chime in and point out that IBM is still
> > > supporting various versions of Java on different platforms... and
> RedHat
> > > has pledged to support OpenJDK 6 as long as its customers want/pay it
> to)
> > >
> > > Anyway... just some thoughts
> > >
> > > P.S.
> > >   I would really love to be able to use the Java 8 features in Maven
> > > core... "1 and 1 back" still leaves us until Java 9 before we can do
> > > that... which is a good 2-3 years away from now... unless somebody
> > > implements a retroweaver to Java 7 (which at least stands a good
> chance),
> > > hence why I would like to drive us to Java 7 as a minimum once Java 8
> is
> > > released.
> > >
> >
>



-- 

--
+==============================+
| Bästa hälsningar,
| [sw. "Best regards"]
|
| Lennart Jörelid
| EAI Architect & Integrator
|
| jGuru Europe AB
| Mölnlycke - Kista
|
| Email: lj@jguru.se
| URL:   www.jguru.se
| Phone
| (skype):    jgurueurope
| (intl):     +46 708 507 603
| (domestic): 0708 - 507 603
+==============================+

Re: [DISCUSS] Maven JVM Runtime requirements

Posted by Stephen Connolly <st...@gmail.com>.
yes I know... but that doesn't get the full Java 8 API... which brings the
fun of animal sniffer back in play... I'd rather be able to just rely on
Java 8 the full shebang! That ain't happening before Java 8 is released...
if we'd rather a policy of "1 and 0 back" I'd be happy with that too!


On 13 January 2014 12:07, Kristian Rosenvold
<kr...@gmail.com>wrote:

> https://github.com/orfjackal/retrolambda
>
>
> 2014/1/13 Stephen Connolly <st...@gmail.com>
>
> > We are gearing up for the release of Maven 3.2.0... wherein we will drop
> > support for Java 1.5 as the runtime that Maven requires (we will still
> > support compiling and running tests with older JVMs via toolchains
> though)
> >
> > This means we will effectively enter a realm of "1 and 1 back"
> >
> > Do we want to switch to this as a policy?
> >
> > i.e. something like: "When a new Major/Minor line is released, the JVM
> > requirements for running Maven will be the latest current Oracle JVM
> > version and the previous Oracle JVM version or any JVM version compatible
> > with such"
> >
> > Which could mean that Maven 4.0 would be Java 7 as a minimum requirement
> > (assuming Java 8 were released before we get to our 4.0)
> >
> > (I know Chris is going to chime in and point out that IBM is still
> > supporting various versions of Java on different platforms... and RedHat
> > has pledged to support OpenJDK 6 as long as its customers want/pay it to)
> >
> > Anyway... just some thoughts
> >
> > P.S.
> >   I would really love to be able to use the Java 8 features in Maven
> > core... "1 and 1 back" still leaves us until Java 9 before we can do
> > that... which is a good 2-3 years away from now... unless somebody
> > implements a retroweaver to Java 7 (which at least stands a good chance),
> > hence why I would like to drive us to Java 7 as a minimum once Java 8 is
> > released.
> >
>

Re: [DISCUSS] Maven JVM Runtime requirements

Posted by Kristian Rosenvold <kr...@gmail.com>.
https://github.com/orfjackal/retrolambda


2014/1/13 Stephen Connolly <st...@gmail.com>

> We are gearing up for the release of Maven 3.2.0... wherein we will drop
> support for Java 1.5 as the runtime that Maven requires (we will still
> support compiling and running tests with older JVMs via toolchains though)
>
> This means we will effectively enter a realm of "1 and 1 back"
>
> Do we want to switch to this as a policy?
>
> i.e. something like: "When a new Major/Minor line is released, the JVM
> requirements for running Maven will be the latest current Oracle JVM
> version and the previous Oracle JVM version or any JVM version compatible
> with such"
>
> Which could mean that Maven 4.0 would be Java 7 as a minimum requirement
> (assuming Java 8 were released before we get to our 4.0)
>
> (I know Chris is going to chime in and point out that IBM is still
> supporting various versions of Java on different platforms... and RedHat
> has pledged to support OpenJDK 6 as long as its customers want/pay it to)
>
> Anyway... just some thoughts
>
> P.S.
>   I would really love to be able to use the Java 8 features in Maven
> core... "1 and 1 back" still leaves us until Java 9 before we can do
> that... which is a good 2-3 years away from now... unless somebody
> implements a retroweaver to Java 7 (which at least stands a good chance),
> hence why I would like to drive us to Java 7 as a minimum once Java 8 is
> released.
>