maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Stephen Connolly" <stephen.alan.conno...@gmail.com>
Subject Re: scope-import and dependencyManagement
Date Fri, 03 Oct 2008 13:36:21 GMT
I think you are mis-interpreting what I said.

You have the following structure

/pom.xml (agregator)
 +suite/pom.xml (the suite dependencies)
 +client/pom.xml (the client thing we are building)
 +web/pom.xml (the web ting we are building)

If you have only one corporate pom (not shown on the tree) then you
can get away with everything ultimately inheriting from the corporate
pom by having a parent tree like

/pom.xml ---is-a-child-of---> /suite/pom.xml
/client/pom.xml ---is-a-child-of---> /suite/pom.xml
/web/pom.xml ---is-a-child-of---> /suite/pom.xml
/suite/pom.xml ---is-a-child-of---> corporate-pom.xml

And you'd put your dependencyManagement in /suite/pom.xml

The question is why have this <scope>import</scope>

The reason is you may have corporate standards for different
packagings... and they may not work in the one pom.xml

In that case you would have

corporate-root-pom.xml
corporate-jar-pom.xml ---is-a-child-of---> corporate-root-pom.xml
corporate-war-pom.xml ---is-a-child-of---> corporate-root-pom.xml

And then
/pom.xml ---is-a-child-of---> corporate-aggregator-pom.xml
/client/pom.xml ---is-a-child-of---> corporate-jar-pom.xml
/web/pom.xml ---is-a-child-of---> corporate-war-pom.xml

Now the problem is how do I ensure that client and web have the same
dependencyMangement sections?

The answer is import scope.... so in that case you have

/suite/pom.xml ---is-a-child-of---> corporate-root-pom.xml
/client/pom.xml ---is-a-child-of---> corporate-jar-pom.xml with
dependency on /suite/pom.xml: scope=import
/web/pom.xml ---is-a-child-of---> corporate-war-pom.xml with
dependency on /suite/pom.xml: scope=import

I was explaining *why* you would want import scope.  I don't know *if*
import scope works... only *why* one would want it in the first place

- Stephen


2008/10/3 webhiker <webhiker@mailinator.com>:
>
> Stephen, I don't think you are correct, it IS supposed to be used that way,
> and that's what all the Maven documentation lists as examples and operating
> behaviour :
>
> http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html
>
> I'm having the exact same issue. Using identical examples to the Maven docs,
> if I omit the version tag in the child pom, the build always fails with
> "missing version tag" error.
>
> There appears to be something wrong with the code. I'm running Maven 2.0.9
>
>
> Stephen Connolly-2 wrote:
>>
>> Each project can list _only the dependencies that it has_ while using the
>> import to ensure that only a single suite of dependency versions are used,
>> I
>> would guess.
>>
>> It's to separate inheritance from dependency management
>>
>> On Tue, Sep 16, 2008 at 4:25 PM, Barry Kaplan <groups1@memelet.com> wrote:
>>
>>>
>>> What is the value of importing into dependencyManagement if those
>>> dependencies cannot then be refered to in the regular dependencies? I'm
>>> missing the purpose/value.
>>> --
>>> View this message in context:
>>> http://www.nabble.com/scope-import-and-dependencyManagement-tp19512161p19514217.html
>>> Sent from the Maven - Users mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>>> For additional commands, e-mail: users-help@maven.apache.org
>>>
>>>
>>
>>
>
> --
> View this message in context: http://www.nabble.com/scope-import-and-dependencyManagement-tp19512161p19795461.html
> Sent from the Maven - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
> For additional commands, e-mail: users-help@maven.apache.org
>
>

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


Mime
View raw message