> -----Original Message-----
> From: Thomas Broyer <t.bro...@gmail.com>
> Sent: Wednesday, March 23, 2022 6:59 AM
> To: Maven Users List <users@maven.apache.org>
> Subject: Re: What steps will install dependent artifacts in local maven
> repo
> 
> Releases are "immutable" in a Maven repository (or at least are expected
> to be, and the Central Repository enforces it), so if 3.7.1 is
> compatible with JDK 8, it will stay that way.

That was my assumption, but I wanted to make sure I wasn't missing something.

> On Wed, Mar 23, 2022 at 2:40 PM KARR, DAVID <dk0...@att.com> wrote:
> 
> > Inline.
> >
> > > -----Original Message-----
> > > From: Alexander Kriegisch <alexan...@kriegisch.name>
> > > Sent: Wednesday, March 23, 2022 1:11 AM
> > > To: users@maven.apache.org
> > > Subject: Re: What steps will install dependent artifacts in local
> > > maven repo
> > >
> > > Some background information, because I happen to know, being an
> > > AspectJ committer and the AspectJ compiler being a fork of ECJ, just
> > > like GrEclipse is, too:
> > >
> > > The JDT Core project has decided a while ago - I think for the
> > > Eclipse
> > > 4.22 (2021-12) release, maybe one release earlier - to drop Java 8
> > > build-time support and move on to Java 11+, because other parts of
> > > Eclipse are based on Java 11 too and it was getting more and more
> > > difficult to keep those libraries out with their Java 11 class
> > > files. So now, JDT Core and therefore also recent versions of
> > > compilers like ECJ, GrEclipse and AspectJ *had* to migrate to Java
> > > 11 as well, because they all depend on JDT Core.
> > >
> > > Attention, please do not misunderstand: ECJ and e.g. AspectJ can
> > > still compile to Java 8 target. I do not know about GrEclipse, but
> > > would expect the same. For pure POJOs (no AspectJ or Groovy), those
> > > compilers can even create class files for as low as Java 1.3! Javac
> > > cannot do that, so you are more flexible than with Javac. The
> > > limitation only applies to build time, i.e. you have to run your
> > > builds on JVM 11+, even if you compile to target 8.
> > >
> > > Your error messages therefore come from builds using more recent
> > > Eclipse
> > > (fork) compiler version, but running on JRE 8. Simply upgrade the
> > > build environment on your workstation or Jenkins server to run on
> > > JDK 11+, then you should be fine.
> >
> > We are in the process of migrating from Java 8 to Java 11, but it is
> > not going to be immediate.  We can't simply flip a switch.
> >
> > I determined that groovy-eclipse-batch v3.0.8-01 is the last version
> > that was compiled by Java 8.  I need to know it will stay this way.  I
> > also am now specifying groovy-eclipse-compiler v3.7.1.  I also hope
> > that will stay on Java 8.  Are both of those true?
> >
> > > David Karr schrieb am 22.03.2022 23:50 (GMT +07:00):
> > >
> > > > Our org's builds have been using Java 8 for quite a while.  We're
> > > starting
> > > > to move some builds to Java 11.  We're seeing some builds failing
> > > > with
> > > the
> > > > following:
> > > > -------------
> > > > Execution default-compile of goal
> > > > org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile
> failed:
> > > > An API incompatibility was encountered while executing
> > > > org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile:
> > > > java.lang.UnsupportedClassVersionError:
> > > > org/eclipse/jdt/core/compiler/batch/BatchCompiler has been
> > > > compiled by
> > > a
> > > > more
> > > > recent version of the Java Runtime (class file version 55.0), this
> > > version
> > > > of
> > > > the Java Runtime only recognizes class file versions up to 52.0
> > > > -------------
> > > >
> > > > This indicates that the artifact with the BatchCompiler class
> > > > (ecj)
> > > was
> > > > compiled with Java 11, but the current JVM is Java 8.
> > > >
> > > > I'm trying to understand the possible scenarios that could produce
> > > this, so
> > > > we can mitigate it properly.
> > > >
> > > > This artifact is specified as a direct dependency of the
> > > > "maven-compiler-plugin". It would help to understand exactly which
> > > Maven
> > > > goals will install plugin dependencies into the local maven repo.
> > > > At
> > > least
> > > > our builds only do "mvn package" or "mvn deploy", depending on
> > > > what is being built.
> > > >
> > > > However, our builds are run on a pool of Jenkins build nodes, and
> > > > I'm
> > > not
> > > > certain whether those build nodes are shared with other projects
> > > > in
> > > our
> > > > large enterprise. I'm trying to determine that.
> > > >
> > > > We may determine that because of these issues, we will have to
> > > > specify
> > > a
> > > > fresh empty local repository for every build, which will obviously
> > > make our
> > > > builds take longer.
> > > >
> > >
> > > --------------------------------------------------------------------
> > > - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > > For additional commands, e-mail: users-h...@maven.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@maven.apache.org
> > For additional commands, e-mail: users-h...@maven.apache.org
> >
> >
> 
> --
> Thomas Broyer
> /tɔ.ma.bʁwa.je/
> <https://urldefense.com/v3/__http://**A.ma.b**Awa.je/__;yZTKgQ!!BhdT!nSF
> -GUfvXMkZKfT6UwuWtDIKHrECGPYNe7gBdCpFLjQNiWiJVVAT2vjXPtx60X_-
> D6Jym9b2Pjn75cE$ >

Reply via email to