Help is at hand: http://mvnrepository.com/ . Search for the artifact you
want and it helpfully gives you the snippet to include:
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.3</version>
</dependency>
The only thing you need to do is cut and paste, and then change the version
to: <version>${commons.lang.version}</version>. And that is the complete
cure to dizziness :-)
Mike
On 7/18/07, syg6 <[EMAIL PROTECTED]> wrote:
That's what I originally was going to do but I am not sure how. First off,
I
am not sure why it's grabbing 2.1 when in the properties section of
pom.xml
we have:
<commons.lang.version>2.3</commons.lang.version>
Apparently Maven selects 2.1 because it's the 'shorter path' even though
we
set this property. Oh well. convention over configuration!
I see how to create a dependency for artifacts but how would I do it for a
jar? If I define a new dependency, where all the other dependencies are,
it
would be like this:
<dependencies>
...
<dependency>
<groupId>???</groupId>
<artifactId></artifactId>
<version>${commons.lang.version}</version>
</dependency>
</dependencies>
What do I put for groupId and artifactId?
Maven makes me dizzy ...
Bob
Michael Horwitz wrote:
>
> Maven selects its dependencies not on highest version number, but on
> shortest path to dependency. i.e. if you have project dependencies A
> 1.0depends on B
> 1.0 depends on C 1.2 and D 1.0 depends on C 1.1, then the dependency in
> your
> classpath will be C 1.1 as it has the shortest path to your project.
>
> The easiest way to sort this out without drowning in Maven transitive
> dependency nightmares is to include the dependency you want directly in
> your
> project's pom.xml. It will override all other dependencies inherited
> transitively.
>
> Mike.
>
> On 7/18/07, syg6 <[EMAIL PROTECTED]> wrote:
>>
>>
>> Well I can't get this thing to work.
>>
>> I ran a 'mvn -X' and 'commons-lang-2.1' comes up all over the place.
What
>> I
>> gather I need to do is find out which artifacts depend on '
>> commons-lang-2.1'
>> and exlcude them from the 'spring-modules-validation' artifact, which
>> depends on 'commons-lang-2.3' (or 2.2 minimum).
>>
>> The output for the 'mxn -X' command has a bunch of lines like this:
>>
>> [DEBUG] Adding managed dependencies for unknown:xxxxxx
>>
>> ... followed by all the jars it needs. The following artifacts list
>> 'commons-lang:jar:2.1' :
>>
>> ehcache
>> spring (which I understand as spring-aop, spring-dao, spring-jdbc,
>> spring-remoting, spring-support)
>> acegi-security-tiger
>> displaytag
>>
>> So I tried exclusing them like this:
>>
>> <dependency>
>> <groupId>org.springmodules</groupId>
>> <artifactId>spring-modules-validation</artifactId>
>> <version>${springmodules.validation.version}</version>
>> <exclusions>
>> <exclusion>
>> <artifactId>ehcache</artifactId>
>> <groupId>net.sf.ehcache</groupId>
>> </exclusion>
>> </exclusions>
>>
>> And so on. But after doing this if I run 'mvn -X' again I still see
this:
>>
>> [DEBUG] org.springmodules:spring-modules-validation:jar:0.8:compile
>> (selected for compile)
>> [DEBUG] commons-lang:commons-lang:jar:2.2:compile (removed - nearer
>> found: 2.1)
>>
>> It's grabbing commons-lang-2.1 instead of 2.3.
>>
>> What gives? I've been puring over the Maven docs and I can't find
>> anything
>> like this ...
>>
>> Anyone?
>>
>> Cheers,
>> Bob
>>
>>
>>
>> mraible wrote:
>> >
>> > On 7/17/07, syg6 <[EMAIL PROTECTED]> wrote:
>> >>
>> >> Hi Matt,
>> >>
>> >> I would have thought the opposite - it seems some library (Spring
>> >> validator)
>> >> is somehow 'bundling' version 2.1 of commons-lang when in fact it
>> needs
>> >> 2.3.
>> >> It seems to me that I need to tell it to use 2.3, not 2.1.
>> >
>> > Sorry, I misunderstood. You sound like you know what you're doing
>> though.
>> > ;-)
>> >
>> >>
>> >> What I don't get is why this broke only after exploding Appfuse, and
>> who
>> >> is
>> >> 'including' version 2.1. I ran the 'mvn -X' command and
>> >> 'commons-lang-2-1'
>> >> is popping up all over the place. Is there any way to make those
apps
>> >> that
>> >> depend on 2.1 instead use 2.3? I am a Maven newb, as you can
probably
>> >> tell
>> >
>> > You can use <exclusions> to exclude commons-lang from those
>> > dependencies. Is there a dependency that actually references 2.3 and
>> > it's just not getting picked up? If so, I've seen this happen before
-
>> > usually Maven picks the shortest path. That's the reason why putting
>> > it in your pom.xml explicitly should fix the problem.
>> >
>> > Matt
>> >
>> >> ...
>> >>
>> >> Thanks!
>> >> Bob
>> >>
>> >>
>> >>
>> >> mraible wrote:
>> >> >
>> >> > If you add an explicit dependency on commons-lang-2.1 to your
>> pom.xml
>> ,
>> >> > it should fix any transitive dependency issues. The problem is
>> likely
>> >> > because struts-menu (or another library) depends on a newer
version
>> of
>> >> > commons-lang. You can run "mvn -X > mvn.log" to see the full
>> >> > dependency list in mvn.log.
>> >> >
>> >> > Matt
>> >> >
>> >> > On 7/17/07, syg6 <[EMAIL PROTECTED]> wrote:
>> >> >>
>> >> >> I have been working with Appfuse M5 for a couple weeks now. I had
>> no
>> >> >> problem
>> >> >> with anything while working with the JAR-ed and WAR-ed version.
>> >> >>
>> >> >> But then I have 'exploded' Appfuse into my Eclipse using 'mvn
>> >> >> appfuse:full-source' and 'mvn eclipse:eclipse'. And now when I
run
>> >> 'mvn
>> >> >> test
>> >> >> -Dtest=PersonControllerTest' I get this error:
>> >> >>
>> >> >> java.lang.NoSuchFieldError: IS_JAVA_1_6
>> >> >> at
>> >> >>
>> >> org.springmodules.validation.util.LibraryUtils.<clinit>(
>> LibraryUtils.java:40)
>> >> >>
>> >> >> http://forum.springframework.org/archive/index.php/t-35083.html
>> This
>> >> >> post
>> >> >> seems to say that the Spring Validation framework has a
dependency
>> on
>> >> >> commons-lang-2.1, whereas Appfuse uses commons-lang-2.3.
>> >> >>
>> >> >> But I can't find commons-lang-2.1 anywhere in Appfuse and this
>> wasn't
>> >> >> happening before using the exploded verison of Appfuse.
>> >> >>
>> >> >> Btw, I am using Spring MVC Basic.
>> >> >>
>> >> >> Many thanks!
>> >> >> Bob
>> >> >> --
>> >> >> View this message in context:
>> >> >>
>> >>
>>
http://www.nabble.com/Problems-executing-controller-test-after-running-mvn-appfuse%3Afull-source-tf4097676s2369.html#a11652009
>> >> >> Sent from the AppFuse - User mailing list archive at Nabble.com.
>> >> >>
>> >> >>
>> ---------------------------------------------------------------------
>> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
>> >> >>
>> >> >>
>> >> >
>> >> >
>> >> > --
>> >> > http://raibledesigns.com
>> >> >
>> >> >
>> ---------------------------------------------------------------------
>> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> > For additional commands, e-mail: [EMAIL PROTECTED]
>> >> >
>> >> >
>> >> >
>> >>
>> >> --
>> >> View this message in context:
>> >>
>>
http://www.nabble.com/Problems-executing-controller-test-after-running-mvn-appfuse%3Afull-source-tf4097676s2369.html#a11652420
>> >> Sent from the AppFuse - User mailing list archive at Nabble.com.
>> >>
>> >>
---------------------------------------------------------------------
>> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> >> For additional commands, e-mail: [EMAIL PROTECTED]
>> >>
>> >>
>> >
>> >
>> > --
>> > http://raibledesigns.com
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: [EMAIL PROTECTED]
>> > For additional commands, e-mail: [EMAIL PROTECTED]
>> >
>> >
>> >
>>
>> --
>> View this message in context:
>>
http://www.nabble.com/Problems-executing-controller-test-after-running-mvn-appfuse%3Afull-source-tf4097676s2369.html#a11666344
>> Sent from the AppFuse - User mailing list archive at Nabble.com.
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>> For additional commands, e-mail: [EMAIL PROTECTED]
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/Problems-executing-controller-test-after-running-mvn-appfuse%3Afull-source-tf4097676s2369.html#a11666741
Sent from the AppFuse - User mailing list archive at Nabble.com.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]