ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mitch Gitman <mgit...@gmail.com>
Subject Re: buildlist task chokes on absolute path to parent Ivy module
Date Tue, 26 Jun 2012 22:07:40 GMT
I've upgraded to Ivy 2.3.0-rc1, as should be apparent from the "extends &
buildlist" thread I started. Now I try plugging in an absolute path to the
parent filesystem location. It works in a functional sense. However, I'm
seeing the following false-positive warning message, apparently because I'm
using a Windows filesystem path:

[ivy:resolve] :: problems summary ::

[ivy:resolve] :::: WARNINGS

[ivy:resolve]   Unable to parse included ivy file
C:\...\master-parent/ivy.xml: unknown protocol: c

[ivy:resolve]

[ivy:resolve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS



Here's the passage in XmlModuleDescriptorParser where this is arising:

            //check on filesystem based on location attribute (for dev ONLY)

            try {

                checkParentModuleOnFilesystem(location);

            } catch (IOException e) {

                Message.warn("Unable to parse included ivy file " +
location + ": "

                    + e.getMessage());

            }



I hope people can agree that showing users a misleading warning message
every time they do an ivy:resolve is a bug worth resolving before there's a
final 2.3.0 release.



I will file a JIRA issue for this. I'm still trying to produce a pared-down
use case for the buildlist+extends issue. Once I have that, I'll produce a
JIRA issue for that.

On Mon, Jun 11, 2012 at 10:07 PM, Mitch Gitman <mgitman@gmail.com> wrote:

> I adapted src/example/multi-project in the Ivy distribution to have the
> existing Ivy modules extend a parent ivy.xml. Such as:
> <ivy-module version="1.0">
>     <info
>         organisation="org.apache.ivy.example"
>         module="find"
>         status="integration">
>         <extends organisation="org.apache.ivy.example"
> module="multi-parent" revision="1.0"
>             location="../multi-parent/ivy.xml" />
>     </info>
>
> Both absolute and relative paths worked.
>
> This suggests the problem is on my end. I'm going to try deconstructing
> the failing modules next, but if this rings any bells, I'd be glad to hear.
>
> On Mon, Jun 11, 2012 at 11:13 AM, Mitch Gitman <mgitman@gmail.com> wrote:
>
>> I'm using the parent Ivy module feature with the ivy.xml
>> /ivy-module/info/extends element. This works just fine whether I use a
>> relative path or an absolute path for the location attribute that locates
>> the parent ivy.xml. When I go to run ivy:buildlist, however, it only works
>> with the relative path. The moment it encounters an absolute path for the
>> parent location, it fails with:
>> … impossible to parse ivy file for …: ivyfile=…/ivy.xml
>> exception=java.text.ParseException: Problem occurred while parsing ivy
>> file: Unable to
>>  parse included ivy file for …#...;… in file:/…/ivy.xml
>>
>> The exception is being thrown in XmlModuleDescriptorParser, line 422:
>>             if (parent == null) {
>>                 throw new ParseException("Unable to parse included ivy
>> file for "
>>                         + parentOrganisation + "#" + parentModule + ";" +
>> parentRevision, 0);
>>             }
>>
>> I'm seeing this with Ivy 2.2.0. I haven't tried yet to reproduce it with
>> Ivy 2.3.0-rc1.
>>
>> Is anyone familiar with this behavior? Is this a known bug or is there
>> something I'm missing?
>>
>> Depending on what I hear back, I can try creating an isolated, simple use
>> case using both 2.2.0 and 2.3.0-rc1.
>>
>
>

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