Opened 10 years ago

Closed 5 years ago

#43156 closed defect (wontfix)

maven-devel installation completely broken

Reported by: simonazriel@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: ports Version: 2.2.1
Keywords: Cc: easye, me@…, blair (Blair Zajac), axet (Alexey Kuznetsov), chrstphrchvz (Christopher Chavez)
Port: maven-devel

Description

I tried to install maven-devel and it looked like it installed correctly but when I tried to select it, it failed. This is on MacOS Mavericks with the Mavericks version of macports. There is no error reported on installation. There is no other maven version installed. There is no logfile. Maven is a vitally important port.

~ $ port installed | grep maven
  maven-devel @3.1.1_0 (active)
  maven_select @0.3_1 (active)
~ $ sudo port select --set maven maven-devel
Selecting 'maven-devel' for 'maven' failed: The specified version 'maven-devel' is not valid.
~ $ sudo port select --list  maven
Available versions for maven:
	maven3
	none (active)
~ $ sudo port select --set maven maven3
Selecting 'maven3' for 'maven' failed: could not create new link "/opt/local/bin/mvn": target "/opt/local/bin/mvn3" doesn't exist
~ $
~ $ sudo port select --list  maven
Available versions for maven:
	maven3
	none (active)

Change History (8)

comment:1 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: easieste@… me@… blair@… added
Keywords: maven3 maven-devel removed
Priority: HighNormal

The problem is that there seem to be too many maven ports, with conflicting naming schemes; I don't know why this is.

Usually a software package in MacPorts has either:

  1. one version at a time: only one of these can be installed at a time because they install files to the same places:
    1. a single port foo for the current version
    2. a port foo for the current stable version and a port foo-devel for a development version
  2. multiple versions simultaneously: any number of ports fooA fooB fooC etc. where A B and C are some portion of the version number; any of these can be installed at the same time because they install files to different places; often a foo_select port is available to make one of these the version that gets run when you run "foo"

maven seems to be using both strategies 1(b) and 2, and it should decide which of these strategies it wants to follow. I think it wants to follow the 2nd strategy, since the maven port is replaced by the maven1 port. So shouldn't maven3 be updated to a newer version (#42737) and maven-devel replaced by maven3? See also #42114.

comment:2 in reply to:  1 ; Changed 10 years ago by easye

Replying to ryandesign@…:

[I had responded to this last week with the "wrong" return address for the mailing list. Thanks to @ryandesign for pointing this out.]

Yes, this is the way forward in general.

The subtlety was that maven-3.1.x changed the API points it exports to be used by other tools in a way that is incompatible with maven-3.0.x, so previous consumers of the maven3 port were broken if I we had updated maven3 to point to maven-3.1.x. Enough time has passed, that most of these consumers of maven3 (or at least the ones that I use), now work with both the maven-3.0.x and maven-3.1.x API.

Two ways forward:

1) maven3 goes to maven-3.1.x. MacPorts no longer offers a maven-3.0.x installation

2) A new port 'maven31' gets introduced for maven-3.1.x; We rename 'maven3' as 'maven30' which offers maven-3.0.x. Possibly we use 'maven3' as synonym for 'maven31'.

In any event, maven-devel should be retired.

comment:3 in reply to:  2 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

What about maven 3.2.x? Is it the same API as 3.1.x, or different again?

comment:4 Changed 10 years ago by easye

I don't know about how different maven-3.2.x is from maven-3.1.x.

The API incompatibility was mostly caused by moving to the [org.apache.aether.* packages][1]. I don't see a corresponding toplevel announcement in the [maven-3.2.1 release notes][2], so I would suspect that there wouldn't be as many problems, but I haven't verified by any testing.

[1]: http://maven.apache.org/docs/3.1.0/release-notes.html [2]: http://maven.apache.org/docs/3.2.1/release-notes.html

comment:5 Changed 10 years ago by axet (Alexey Kuznetsov)

Cc: axet@… added

Cc Me!

comment:6 Changed 5 years ago by chrstphrchvz (Christopher Chavez)

maven-devel was removed: [1d38324791/macports-ports]

comment:7 Changed 5 years ago by chrstphrchvz (Christopher Chavez)

Cc: chrstphrchvz added

comment:8 Changed 5 years ago by mf2k (Frank Schima)

Resolution: wontfix
Status: newclosed
Note: See TracTickets for help on using tickets.