maven-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anders Hammar <and...@hammar.net>
Subject Re: Referencing a parent POM without relativePath
Date Sat, 24 Nov 2012 18:13:56 GMT
I'd just like to echo Benson. You do not need the <relativePath/> element
if your environment is setup correctly.

/Anders


On Sat, Nov 24, 2012 at 4:48 AM, Eric Kolotyluk <eric.kolotyluk@gmail.com>wrote:

> On 2012-11-23 7:01 PM, Benson Margulies wrote:
>
>> On Fri, Nov 23, 2012 at 8:45 PM, Eric Kolotyluk
>> <eric.kolotyluk@gmail.com> wrote:
>>
>>> OK, I have added the following to our Corporate POM. Hopefully I, and
>>> others, won't fall into this trap again.
>>>
>>> I still think the <userFriendly>true</**userFriendly> version of
Maven
>>> would
>>> just do the right thing when there is no <relativePath/> element, and
>>> there
>>> is no ../pom.xml. I can see no value in the current Maven behavior of
>>> throwing an error the way it does.
>>>
>> Eric,
>>
>> It does what you want. If it is not doing it for you, there's
>> something wrong with your environment.
>>
>> None of our POMs have explicit relativePath elements, and they all
>> work fine. The empty element is only needed when there *is* a
>> ../pom.xml to avoid, but you are writing that you don't have one.
>>
>>
> OK, I will play with this some more to see if I can replicate the problem
> again.
>
> Cheers, Eric
>
>
>
>>  Cheers, Eric
>>>
>>>     <!--
>>>         No parent for this POM! This is parent of all Kodak projects.
>>>         Top Level Project POMs should reference this POM with
>>>
>>>         <parent>
>>>           <groupId>com</groupId>
>>>           <artifactId>kodak</artifactId>
>>>           <version>1.0.0</version>
>>>           <relativePath/>
>>>         </parent>
>>>
>>>         The empty <relativePath/> element is necessary because com:kodak
>>> is a
>>> seperate project that will never be in
>>>         the parent directory of your project. If <relativePath/> is
>>> missing,
>>> Maven will look in ../ by default, and
>>>         then throw an error because it cannot find ../pom.xml (and you
>>> should
>>> never have ../pom.xml).
>>>     -->
>>>
>>>
>>> On 2012-11-23 12:47 PM, David Karr wrote:
>>>
>>>> I had also discovered the difference between the missing vs. empty
>>>> "relativePath" element.  Although it was initially disconcerting that I
>>>> had
>>>> to specify an empty "relativePath" element to get what I assumed was the
>>>> most reasonable behavior, I can also see the logic of the alternative
>>>> with
>>>> the default value. I prefer to separate the notion of "parent" pom from
>>>> "aggregator" pom (a pom with a list of modules), but if you use a
>>>> strategy
>>>> that combines them, then the default value is more likely.
>>>>
>>>>
>>>> On Fri, Nov 23, 2012 at 12:34 PM, Eric Kolotyluk
>>>> <eric.kolotyluk@gmail.com>**wrote:
>>>>
>>>>  DOH! I retract that previous message. I forgot to open my VPN
>>>>> connection
>>>>> first.
>>>>>
>>>>> Putting <relativePath/> in the POM does work!
>>>>>
>>>>> So, would it be unreasonable if Maven treated the absence of the
>>>>> <relativePath> element the same as <relativePath/>. That
would make it
>>>>> more
>>>>> user friendly as far as I am concerned.
>>>>>
>>>>> Also, it was m2e that built the original project POM, and it did not
>>>>> put
>>>>> <relativePath/>  in the POM.
>>>>>
>>>>> Cheers, Eric
>>>>>
>>>>>
>>>>>
>>>>> On 2012-11-23 12:22 PM, Eric Kolotyluk wrote:
>>>>>
>>>>>  I tried putting <relativePath/> in my POM, but it does not fix
things.
>>>>>>
>>>>>>     <parent>
>>>>>>       <groupId>com</groupId>
>>>>>>       <artifactId>kodak</artifactId>
>>>>>>       <version>0.0.11-SNAPSHOT</****version>
>>>>>>       <relativePath/>
>>>>>>     </parent>
>>>>>>
>>>>>> I still get
>>>>>>
>>>>>> C:\Users\Eric\workspace\tree-****combo-box>mvn clean
>>>>>> [INFO] Scanning for projects...
>>>>>> Downloading:
>>>>>> http://repository.ca.kodak.****com:8082/nexus/content/groups/***
>>>>>>
>>>>>> *public/com/kodak/0.0.11-****SNAPSHOT/maven-metadata.xml<ht**
>>>>>> tp://repository.ca.kodak.com:**8082/nexus/content/groups/**
>>>>>> public/com/kodak/0.0.11-**SNAPSHOT/maven-metadata.xml<http://repository.ca.kodak.com:8082/nexus/content/groups/public/com/kodak/0.0.11-SNAPSHOT/maven-metadata.xml>
>>>>>> >
>>>>>> [WARNING] Could not transfer metadata
>>>>>> com:kodak:0.0.11-SNAPSHOT/****maven-metadata.xml
>>>>>> from/to nexus (http://repository.ca.kodak.**
>>>>>>
>>>>>> com:8082/nexus/content/groups/****public<http://repository.ca.**
>>>>>> kodak.com:8082/nexus/content/**groups/public<http://repository.ca.kodak.com:8082/nexus/content/groups/public>
>>>>>> >):
>>>>>> repository.ca.kodak.com
>>>>>> Downloading:
>>>>>> http://repository.ca.kodak.****com:8082/nexus/content/groups/***
>>>>>>
>>>>>> *public/com/kodak/0.0.11-****SNAPSHOT/kodak-0.0.11-****SNAPSHOT.pom<
>>>>>> http://**repository.ca.kodak.com:8082/**nexus/content/groups/public/*
>>>>>> *com/kodak/0.0.11-SNAPSHOT/**kodak-0.0.11-SNAPSHOT.pom<http://repository.ca.kodak.com:8082/nexus/content/groups/public/com/kodak/0.0.11-SNAPSHOT/kodak-0.0.11-SNAPSHOT.pom>
>>>>>> >
>>>>>> [ERROR] The build could not read 1 project -> [Help 1]
>>>>>> [ERROR]
>>>>>> [ERROR]   The project
>>>>>> net.kolotyluk.experiment:tree-****combo-box:0.0.1-SNAPSHOT
>>>>>> (C:\Users\Eric\workspace\tree-****combo-box\pom.xml) has 1 error
>>>>>> [ERROR]     Non-resolvable parent POM: Could not transfer artifact
>>>>>> com:kodak:pom:0.0.11-SNAPSHOT from/to nexus
>>>>>> (http://repository.ca.kodak.*
>>>>>>
>>>>>> *com:8082/nexus/content/**groups/**public<http://**
>>>>>> repository.ca.kodak.com:8082/**nexus/content/groups/public<http://repository.ca.kodak.com:8082/nexus/content/groups/public>
>>>>>> >):
>>>>>> repository.ca.kodak.com and 'parent.relativePath' points at no local
>>>>>> POM
>>>>>> @ line 9, column 11: Unknown host repository.ca.kodak.com -> [Help
2]
>>>>>> [ERROR]
>>>>>> [ERROR] To see the full stack trace of the errors, re-run Maven with
>>>>>> the
>>>>>> -e switch.
>>>>>> [ERROR] Re-run Maven using the -X switch to enable full debug logging.
>>>>>> [ERROR]
>>>>>> [ERROR] For more information about the errors and possible solutions,
>>>>>> please read the following articles:
>>>>>> [ERROR] [Help 1] http://cwiki.apache.org/****
>>>>>> confluence/display/MAVEN/**<http://cwiki.apache.org/**confluence/display/MAVEN/**>
>>>>>>
>>>>>> ProjectBuildingException<http:**//cwiki.apache.org/confluence/**
>>>>>> display/MAVEN/**ProjectBuildingException<http://cwiki.apache.org/confluence/display/MAVEN/ProjectBuildingException>
>>>>>> >
>>>>>> [ERROR] [Help 2] http://cwiki.apache.org/****
>>>>>> confluence/display/MAVEN/**<http://cwiki.apache.org/**confluence/display/MAVEN/**>
>>>>>>
>>>>>> UnresolvableModelException<htt**p://cwiki.apache.org/**
>>>>>> confluence/display/MAVEN/**UnresolvableModelException<http://cwiki.apache.org/confluence/display/MAVEN/UnresolvableModelException>
>>>>>> >
>>>>>>
>>>>>> It looks like Maven wants to download the Corporate POM because it
>>>>>> sees
>>>>>> it in Nexus, but craps out because it does not like the Project POM.
>>>>>> Maven
>>>>>> seems pretty certain that it wants parent.relativePath to point to
a
>>>>>> local
>>>>>> POM.
>>>>>>
>>>>>> Is there a <userFriendly>true</****userFriendly> switch
I can turn on
>>>>>> somewhere in Maven ;-)
>>>>>>
>>>>>> Cheers, Eric
>>>>>>
>>>>>> On 2012-11-23 9:05 AM, Laird Nelson wrote:
>>>>>>
>>>>>>  On Fri, Nov 23, 2012 at 11:22 AM, Benson Margulies <
>>>>>>> bimargulies@gmail.com>wrote:
>>>>>>>
>>>>>>>    You just name the G/A/V and no relativePath, and Maven will
>>>>>>> download
>>>>>>>
>>>>>>>> just as it would a dependency.
>>>>>>>>
>>>>>>>>    Well, not exactly; if there is no <relativePath>
element present,
>>>>>>>> then
>>>>>>>>
>>>>>>> Maven behaves as though <relativePath>../pom.xml</****relativePath>
>>>>>>> were
>>>>>>> specified.  If that file is a working copy that has not been
>>>>>>> refreshed
>>>>>>> from
>>>>>>> the SCM, then problems can ensue.
>>>>>>>
>>>>>>> I recall that someone mentioned specifying a relative path like
this:
>>>>>>>
>>>>>>> <relativePath/>
>>>>>>>
>>>>>>>
>>>>>>> ...and that that was the only way to force Maven to truly resolve
the
>>>>>>> pom
>>>>>>> from the repository, but I don't know if this is in fact true.
>>>>>>>
>>>>>>> Best,
>>>>>>> Laird
>>>>>>>
>>>>>>>
>>>>>>>  ------------------------------****----------------------------**
>>>>> --**---------
>>>>> To unsubscribe, e-mail:
>>>>> users-unsubscribe@maven.**apac**he.org <http://apache.org><
>>>>> users-unsubscribe@**maven.apache.org<users-unsubscribe@maven.apache.org>
>>>>> >
>>>>> For additional commands, e-mail: users-help@maven.apache.org
>>>>>
>>>>>
>>>>>
>>> ------------------------------**------------------------------**
>>> ---------
>>> To unsubscribe, e-mail: users-unsubscribe@maven.**apache.org<users-unsubscribe@maven.apache.org>
>>> For additional commands, e-mail: users-help@maven.apache.org
>>>
>>>  ------------------------------**------------------------------**
>> ---------
>> To unsubscribe, e-mail: users-unsubscribe@maven.**apache.org<users-unsubscribe@maven.apache.org>
>> For additional commands, e-mail: users-help@maven.apache.org
>>
>>
>
> ------------------------------**------------------------------**---------
> To unsubscribe, e-mail: users-unsubscribe@maven.**apache.org<users-unsubscribe@maven.apache.org>
> For additional commands, e-mail: users-help@maven.apache.org
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message