Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

This

...

document

...

outlines

...

some

...

of

...

the

...

steps

...

that

...

are

...

being

...

taken

...

to

...

ensure

...

as

...

much

...

backward

...

compatibility

...

with

...

tools

...

and

...

plugins

...


that

...

are

...

currently

...

written

...

against

...

Maven

...

2.0.x.

...

Affected

...

Plugins

...

Maven

...

Remote

...

Resources

...

Plugin

...

  • org.apache.maven.project.inheritance.ModelInheritanceAssembler#assembleModelInheritance:

...

  • used

...

  • to

...

  • walk

...

  • the

...

  • POMs

...

  • to

...

  • find

...

  • out

...

  • all

...

  • the

...

  • license

...

  • information.

...

  • This

...


  • functionality

...

  • has

...

  • been

...

  • superceded

...

  • by

...

  • the

...

  • model

...

  • properties-based

...

  • system

...

  • for

...

  • POM

...

  • construction.

...

  • We

...

  • provide

...

  • the

...

  • same

...

  • functionality

...

  • using

...

  • the

...

  • model

...


  • properties-based

...

  • system

...

  • but

...

  • have

...

  • just

...

  • placed

...

  • the

...

  • component

...

  • as-is

...

  • in

...

  • the

...

  • maven-compat

...

  • package

...

  • to

...

  • ensure

...

  • the

...

  • default

...

  • lifecycle

...

  • functions.

...

  • org.apache.maven.project.ProjectUtils:

...

  • placed

...

  • in

...

  • the

...

  • maven-compat

...

  • package.

...

  • org.apache.maven.project.MissingRepositoryElementException

...

  • ...

...

  • used

...

  • by

...

  • ProjectUtils

...

Maven

...

Help

...

Plugin

...

  • org.apache.maven.project.path.PathTranslator:

...

  • used

...

  • as

...

  • a

...

  • parameter

...

  • in

...

  • the

...

  • EvaluateMojo.

...

  • The

...

  • path

...

  • translator

...

  • has

...

  • been

...

  • replaced

...

  • the

...

  • model

...

  • builder

...


  • and

...

  • PomTransformer.

...

Affected Components & Classes

Maven Artifact

Maven Artifact will be entirely extricated from the core of Maven 3.x and replaced with Mercury, but we will make a best effort to
ensure the compatibility of plugins that use Maven Artifact. There are, however, components and classes that are just so broken or conflict
with standard ways of doing resolution and conflict reduction that we can't support them.

Supported Compatibility

  • org.apache.maven.artifact.deployer.ArtifactDeployer

...

  • org.apache.maven.artifact.factory.ArtifactFactory

...

  • org.apache.maven.artifact.handler.ArtifactHandler

...

  • org.apache.maven.artifact.installer.ArtifactInstaller

...

  • org.apache.maven.artifact.manager.WagonManager

...

  • (1)

...

  • org.apache.maven.artifact.repository.ArtifactRepository

...

  • org.apache.maven.artifact.repository.ArtifactRepositoryPolicy

...

  • org.apache.maven.artifact.repository.ArtifactRepositoryFactory

...

  • org.apache.maven.artifact.repository.layout.ArtifactRepositoryLayout

...

  • org.apache.maven.artifact.resolver.ArtifactResolver

...

  • org.apache.maven.artifact.resolver.filter.ArtifactFilter

...

  • org.apache.maven.artifact.resolver.filter.Artifact

...

(1)

...

In

...

r746285

...

various

...

methods

...

have

...

been

...

removed

...

from

...

the

...

WagonManager

...

which

...

breaks

...

the

...

maven-project-info-reports-plugin,

...

the

...


maven-site-plugin

...

and

...

the

...

maven-stage-plugin,

...

e.g.

...

due

...

to

...

a

...

linkage

...

error

...

on

...

getAuthentaticationInfo().

...

Unsupported

...

Compatibility

...

  • org.apache.maven.artifact.metadata.ArtifactMetadataSource

...

  • org.apache.maven.artifact.metadata.ResolutionGroup

...

  • org.apache.maven.artifact.repository.metadata.*

...

  • org.apache.maven.artifact.resolver.ResolutionNode

...

  • org.apache.maven.artifact.resolver.ResolutionListener

...

  • org.apache.maven.artifact.resolver.metadata.*

...

  • org.apache.maven.artifact.resolver.transform.*

...

  • org.apache.maven.artifact.resolver.versioning.*

...

Settings

The settings are historically a CLI-based

...

mechanism

...

for

...

setting

...

preferences.

...

It

...

should

...

have

...

never

...

gone

...

beyond

...

the

...

core

...

into

...

plugins

...


or

...

other

...

tools.

...

Unfortunately

...

we

...

allowed

...

the

...

$

...

{settings}

...

expression

...

in

...

plugins

...

and

...

from

...

there

...

it

...

made

...

its

...

way

...

into

...

components

...

like

...


the

...

release

...

manager.

...

The

...

release

...

manager

...

in

...

turn

...

never

...

evolved

...

to

...

decouple

...

itself

...

from

...

the

...

settings

...

and

...

it

...

requires

...

a

...

recreation

...


of

...

the

...

entire

...

Maven

...

environment

...

to

...

work

...

and

...

grabs

...

the

...

RuntimeInfo

...

info

...

class

...

from

...

the

...

settings

...

in

...

order

...

to

...

do

...

this.

...

Other

...

plugins

...


may

...

require

...

this

...

and

...

we'll

...

have

...

to

...

find

...

them

...

them

...

and

...

push

...

them

...

toward

...

using

...

the

...

Invoker

...

where

...

the

...

Maven

...

environment

...

is

...

taken

...

care

...


of

...

and

...

restrict/forbid

...

the

...

use

...

of

...

settings

...

in

...

plugins.

...

Everything

...

required

...

is

...

in

...

the

...

exeution

...

request

...

and

...

therefore

...

the

...

session

...

and

...


that's

...

all

...

plugins

...

should

...

need.

...

The

...

changes

...

made

...

relate

...

to

...

MNG-3954,

...

where

...

the

...

RuntimeInfo

...

class

...

needed

...

to

...

be

...

partially

...

rescurrected

...

in

...

order

...

to

...

make

...

the

...

release

...


plugin

...

happy.

...

Changes

...

to

...

the

...

CLI

...

  • Log

...

  • file

...

  • support

...

  • has

...

  • been

...

  • added

...

  • i.e

...

  • mvn

...

  • -l

...

  • log.txt

...

  • clean

...

  • install

...

  • Plugin

...

  • registry

...

  • option

...

  • has

...

  • not

...

  • been

...

  • supported

...

  • in

...

  • the

...

  • core

...

  • and

...

  • it

...

  • lagged

...

  • around

...

  • in

...

  • the

...

  • CLI

...

Repositories

Support for non-unique

...

SNAPSHOT

...

deployments

...

will

...

be

...

dropped.

...

Profiles

Support for the profiles.xml

...

will

...

be

...

dropped.

...

Maven

...

1.x

...

Support

...

for

...

the

...

legacy

...

repositories

...

has

...

been

...

dropped.

...