[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bugs in ant-contrib's POM?



Hi,

I think that the pom shipped with ant-contrib is broken such that
mh_make will be unhappy when trying to build anything that depends upon it.

mh_make is bombing out thus:

[INFO] Scanning for projects...
[INFO]
------------------------------------------------------------------------
[INFO] Building Shibboleth Common Library
[INFO]    task-segment:
[org.debian.maven:maven-packager-utils:1.6.6:generate] (aggregator-style)
[INFO]
------------------------------------------------------------------------
[INFO]
------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO]
------------------------------------------------------------------------
[INFO] Failed to resolve artifact.

2) jayasoft:ivy:jar:debian

  Try downloading the file manually from the project website.

  Then, install it using the command:
      mvn install:install-file -DgroupId=jayasoft -DartifactId=ivy
-Dversion=debian -Dpackaging=jar -Dfile=/path/to/file

  Alternatively, if you host your own repository you can deploy the file
there:
      mvn deploy:deploy-file -DgroupId=jayasoft -DartifactId=ivy
-Dversion=debian -Dpackaging=jar -Dfile=/path/to/file -Durl=[url]
-DrepositoryId=[id]

  Path to dependency:
        1) edu.internet2.middleware:shibboleth-common:jar:1.4.1-SNAPSHOT
        2) ant-contrib:ant-contrib:jar:debian
        3) jayasoft:ivy:jar:debian

3) bcel:bcel:jar:debian

  Try downloading the file manually from the project website.

  Then, install it using the command:
      mvn install:install-file -DgroupId=bcel -DartifactId=bcel
-Dversion=debian -Dpackaging=jar -Dfile=/path/to/file

  Alternatively, if you host your own repository you can deploy the file
there:
      mvn deploy:deploy-file -DgroupId=bcel -DartifactId=bcel
-Dversion=debian -Dpackaging=jar -Dfile=/path/to/file -Durl=[url]
-DrepositoryId=[id]

  Path to dependency:
        1) edu.internet2.middleware:shibboleth-common:jar:1.4.1-SNAPSHOT
        2) ant-contrib:ant-contrib:jar:debian
        3) bcel:bcel:jar:debian

My POM (in shibboleth-common) has the following:

        <dependency>
            <groupId>ant-contrib</groupId>
            <artifactId>ant-contrib</artifactId>
            <version>1.0b2</version>
            <scope>runtime</scope>
            <exclusions>
                <exclusion>
                    <groupId>ant</groupId>
                    <artifactId>ant</artifactId>
                </exclusion>
            </exclusions>
        </dependency>

which mh_make has tidied up to be the debian version

...and no dependencies on bcel or ivy directly.

/usr/share/maven-repo/ant-contrib/ant-contrib/debian/ant-contrib-debian.pom
contains:

[inside <properties>]
<debian.bcel.bcel.originalVersion>5.1</debian.bcel.bcel.originalVersion>
<debian.jayasoft.ivy.originalVersion>1.4.1</debian.jayasoft.ivy.originalVersion>

and the dependencies
                <dependency>
                        <groupId>bcel</groupId>
                        <artifactId>bcel</artifactId>
                        <version>debian</version>
                </dependency>

                <!--  could not find a copy of Ivy in M2's repository,
              download
http://www.jayasoft.org/downloads/ivy/1.4.1/ivy-1.4.1.jar
                  and then mvn install:install-file -DgroupId=jayasoft
-DartifactId=ivy -Dpackaging=jar -Dversion=1.4.1 -Dfile=ivy-1.4.1.jar
    -->
                <dependency>
                        <groupId>jayasoft</groupId>
                        <artifactId>ivy</artifactId>
                        <version>debian</version>
                </dependency>

I have "ivy" installed, which provides
/usr/share/maven-repo/org/apache/ivy/ivy/debian/ivy-debian.pom

and "libbcel-java", which provides
/usr/share/maven-repo/org/apache/bcel/bcel/5.x/bcel-5.x.pom

So should ant-contrib's POM in fact ask for org-apache-bcel:bcel 5.x and
org-apache-ivy:ivy debian? and possibly depend on those two packages?

Alternatively, can I tell mh_make to adjust these dependencies? Adding
s/bcel/org-apache-bcel/ bcel jar s/debian/5.x/ * *
to debian/maven.rules doesn't make any difference.

Thanks,

Matthew


Reply to: