You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Maarten Coene <ma...@yahoo.com> on 2005/07/12 09:36:01 UTC

Dependency management in maven 2

Hi,
 
I'm investigating a migration from our Ant build files to maven 2. During this, I came accross Ivy, which has some nice features maven 2 doesn't seem to provide.
 
What we need is the following (which is all supported by Ivy):
- a repository layout which is different from the standard maven/maven2 layout on ibiblio
- transitive dependency support
- support for resolving dependencies like "get me the latest 2.x revision"
- version conflict management: "how do we deal with 2 dependencies with different versions, like 'commons-lang-2.0.jar and commons-lang-2.1.jar'
- different scopes of dependencies
 
The only features I've discovered on the maven2 website are the transitive dependencies and the scopes.
 
So my question is:
- does maven2 support the other features as well?
- if maven2 doesn't support them, will maven2 support "third-party" dependency managers (like Ivy) to be plugged in into maven? For instance by providing an interface they can implement to resolve dependencies? This way, we could use Ivy for resoving the dependencies and use maven to do build our projects and generate the reports.
 
regards,
Maarten

		
---------------------------------
Yahoo! Mail
 Stay connected, organized, and protected. Take the tour

scm:update

Posted by Mariano Stampella <ms...@gmail.com>.
Hi, 

Im using scm:update with a 1.5 version of SCM plugin and I have this
problems:

scm:update:
    [echo] Updating from SCM
[INFO] Executing: cvs -f -q update -d
[INFO] Working directory: c:\eclipse\workspace\manga
[WARNING] Unknown status: '? '.
[WARNING] Unknown status: '? '.
[WARNING] Unknown status: '? '.
[WARNING] Unknown status: '? '.
[WARNING] Unknown status: '? '.
[WARNING] Unknown status: 'M '.
[WARNING] Unknown status: 'M '.
[WARNING] Unknown status: 'M '.


and don't update nothing....

:(


sorry for my English.






---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org


Re: Dependency management in maven 2

Posted by John Casey <jd...@commonjava.org>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

See my response inline.

Maarten Coene wrote:
<snip/>
|
| What we need is the following (which is all supported by Ivy):
| - a repository layout which is different from the standard
maven/maven2 layout on ibiblio

We have two layouts currently: legacy (maven 1.x style) and default
(groupIdPart0/../groupIdPartN/artifactId/version/). If you need a
different style, you can easily implement ArtifactRepositoryLayout from
maven-artifact, and then creating a component descriptor for that new
layout. From there, it's a simple case of specifying which <layout/> to
use inside your POMs <repository/>. Contact me for details if you're
interested.

| - transitive dependency support

We've already got it.

| - support for resolving dependencies like "get me the latest 2.x revision"

We're referring to this as version range support, and it's coming in the
2.0-beta-1 release. I'm pretty sure that Brett's already done some
coding around it, but I can assure you that we've already done quite a
bit of design work for it. See

http://docs.codehaus.org/display/MAVEN/Dependency+Mediation+and+Conflict+Resolution

for more information.

| - version conflict management: "how do we deal with 2 dependencies
with different versions, like 'commons-lang-2.0.jar and
commons-lang-2.1.jar'

The above URL also touches on version conflict management. We've already
~ done some work around this, too, and it'll be coming soon. As you might
guess, a full implementation of conflict management is dependent on the
version ranges implementation.

| - different scopes of dependencies

We support this. However, we do not allow arbitrary dependency scope
names currently, because we believe it muddies the water WRT transitive
dependency resolution. For example, if I'm using a set of scopes where
'foo' marks a dependency as test scope, how will your project (which
uses 'test' to flag the same thing) be able to traverse my POM and
correctly determine which are test-only dependencies?

HTH,

john
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)

iD8DBQFC0+vcK3h2CZwO/4URAoQaAKCTjEXDEgjLO4CUGLSUBPaM53vVlQCfUbW1
2oJXZz1F9bkiP9x3iDp+VlU=
=CNHP
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
For additional commands, e-mail: users-help@maven.apache.org