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

Re: Problems with many POMs in the same package



Hi Ludovic, thanks for your help. Unfortunately mh_make appears to have
the same problem as mh_resolve_dependencies.

On 18/02/2011 00:37, Ludovic Claude wrote:
> Try to install maven-debian-helper 1.4.1 and the latest versions of
> maven-ant-helper and maven-repo-helper, then run mh_make on your
> project, it will help you normally to generate most Debian packaging
> files. This is a log of my session, I'm missing isorelax, but if you
> have it installed, please let me know how it went and report any issues.

Here is how my session continues after isorelax (it's identical to your
before).

> Resolving isorelax:isorelax:jar:debian of scope runtime...
> [ok]
> Resolving relaxngDatatype:relaxngDatatype:jar:debian of scope runtime...
> [ok]
> Resolving xerces:xercesImpl:jar:debian of scope runtime...
> [ok]
> Resolving junit:junit:jar:debian of scope test...
> 
> In xsdlib/pom.xml:
> This dependency cannot be found in the Debian Maven repository. Ignore this dependency?
>   junit:junit:jar:debian
> y/[n] > 

I don't know why it isn't able to find junit: both junit and junit4 are
installed. Anyway, this doesn't seem to be the real problem with my package.

>> dpkg --search /usr/share/maven-repo/junit/junit 
> junit4, junit: /usr/share/maven-repo/junit/junit
>> apt-file search /usr/share/maven-repo/junit/junit 
> junit: /usr/share/maven-repo/junit/junit/3.8.2/junit-3.8.2.jar
> Found junit
> junit: /usr/share/maven-repo/junit/junit/3.8.2/junit-3.8.2.pom
> Found junit
> junit: /usr/share/maven-repo/junit/junit/3.x/junit-3.x.jar
> Found junit
> junit: /usr/share/maven-repo/junit/junit/3.x/junit-3.x.pom
> Found junit
> junit4: /usr/share/maven-repo/junit/junit/4.8.2/junit-4.8.2.jar
> Found junit4
> junit4: /usr/share/maven-repo/junit/junit/4.8.2/junit-4.8.2.pom
> Found junit4
> junit4: /usr/share/maven-repo/junit/junit/4.x/junit-4.x.jar
> Found junit4
> junit4: /usr/share/maven-repo/junit/junit/4.x/junit-4.x.pom
> Found junit4
> Please install the missing dependency using
>   sudo apt-get install junit4
> Try again to resolve the dependency?
> [y]/n > 
> Resolving junit:junit:jar:debian of scope test...
> Please install the missing dependency using
>   sudo apt-get install junit4
> Try again to resolve the dependency?
> [y]/n > y
> Resolving junit:junit:jar:debian of scope test...
> Please install the missing dependency using
>   sudo apt-get install junit4
> Try again to resolve the dependency?
> [y]/n > 
> Resolving junit:junit:jar:debian of scope test...
> Please install the missing dependency using
>   sudo apt-get install junit4
> Try again to resolve the dependency?
> [y]/n > n
> [error]
> 19-feb-2011 12.49.14 org.debian.maven.packager.DependenciesSolver$ToResolve resolve
> GRAVE: Cannot resolve dependencies in ./xsdlib/pom.xml: Dependency not found junit:junit:jar:debian
> Resolving org.apache.maven.plugins:maven-jar-plugin:maven-plugin:2.2 of scope runtime...
> [ok]
> Resolving org.codehaus.mojo:build-helper-maven-plugin:maven-plugin:debian of scope runtime...
> 
> In xsdlib/pom.xml:
> This plugin cannot be found in the Debian Maven repository. Ignore this plugin?
>   org.codehaus.mojo:build-helper-maven-plugin:maven-plugin:debian
> y/[n] > y
> [ignored]
> Resolving xerces:xercesImpl:jar:debian of scope runtime...
> [ok]
> Resolving junit:junit:jar:debian of scope test...
> Please install the missing dependency using
>   sudo apt-get install junit4
> Try again to resolve the dependency?
> [y]/n > n
> [error]
> 19-feb-2011 12.49.26 org.debian.maven.packager.DependenciesSolver$ToResolve resolve
> GRAVE: Cannot resolve dependencies in ./testharness/pom.xml: Dependency not found junit:junit:jar:debian
> Resolving com.sun.msv.datatype.xsd:xsdlib:jar:2009.x of scope test...
> 
> In msv/pom.xml:
> This dependency cannot be found in the Debian Maven repository. Ignore this dependency?
>   com.sun.msv.datatype.xsd:xsdlib:jar:2009.x
> y/[n] > 
>> dpkg --search /usr/share/maven-repo/com/sun/msv/datatype/xsd/xsdlib 
> dpkg: /usr/share/maven-repo/com/sun/msv/datatype/xsd/xsdlib non trovato.
> dpkg failed to execute successfully
>> apt-file search /usr/share/maven-repo/com/sun/msv/datatype/xsd/xsdlib 
> Try again to resolve the dependency?
> [y]/n > 

This one appears to be the real problem, that I also experience with
mh_resolve_dependencies in my semi-complete package. The mh_* scripts
try to resolve dependencies only outside the package I'm building, while
in this case the same Debian package contains some different POMs that
depend on each other. mh_* are unable to detect this fact.

A workaround would be to make different packages for each of the POMs. I
think that this would sub-optimal, because it required much more space
and maintenance time (while the libraries are strictly tied together, so
there is no point to install one without the others).

I don't know how difficult it is to patch maven-debian-helper in order
to recognize dependency POMs present in the same package. If it's too
difficult, I'll go with the workaround.

Giovanni.
-- 
Giovanni Mascellani <mascellani@poisson.phc.unipi.it>
Pisa, Italy

Web: http://poisson.phc.unipi.it/~mascellani
Jabber: g.mascellani@jabber.org / giovanni@elabor.homelinux.org

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: