Correct! It says "Maven 3.x no longer supports usage of these metaversions in the POM"
T On Thu, Feb 29, 2024 at 4:04 PM Alan Snyder <gunpolishing...@cbfiddle.com> wrote: > The Maven 3 compatibility notes page can be read as saying that RELEASE > and LATEST are deprecated only for finding plugins, although it can also be > read as a general statement. > > Which is the correct interpretation? > > I quote: > > Given the threat of non-reproducible builds imposed by automatic plugin > version resolution, this feature is scheduled for removal as far as plugin > declarations in the POM are concerned. > Internally, Maven 2.x used the special version markers RELEASE and LATEST > to support automatic plugin version resolution. These metaversions were > also recognized in the <version> element for a <plugin> declaration. For > the sake of reproducible builds, Maven 3.x no longer supports usage of > these metaversions in the POM. As a result, users will need to replace > occurrences of these metaversions with a concrete version. > > Source: > https://cwiki.apache.org/confluence/display/MAVEN/Maven+3.x+Compatibility+Notes#Maven3.xCompatibilityNotes-PluginMetaversionResolution > > I understand the drawbacks of using LATEST and RELEASE, but there are > situations where they are useful. > > I should have stated explicitly that LATEST is resolved correctly for > artifacts in Maven Central. > > > > > On Feb 29, 2024, at 12:40 AM, Tamás Cservenák <ta...@cservenak.net> > wrote: > > > > Howdy, > > > > Yes, the "LATEST" Maven2 version keyword has been phased out in Maven3. > > They make builds non reproducible (just like snapshots): as it is a > "moving > > target". > > > > T > > > > > > On Thu, Feb 29, 2024, 03:01 Alan Snyder <gunpolishing...@cbfiddle.com> > > wrote: > > > >> I have been using the Maven Artifact Resolver Ant Tasks with success, > >> except in one situation: > >> > >> When the artifact exists only in my local repo (with version > 1-SNAPSHOT), > >> a dependency with version LATEST fails to resolve. > >> > >> An example of the error message: > >> > >> Could not collect dependencies: Failed to collect dependencies at > >> org.violetlib:nls:jar:LATEST > >> > >> If I change the dependency to use 1-SNAPSHOT as the version, the > resolver > >> succeeds. > >> > >> Is it intentional that a local repo does not support LATEST? > >> > >> In case it matters, the artifact was installed in the local repo using > mvn > >> install:install-file. > >> > >> > >> > >