On 11/10/06, Steve Loughran <[EMAIL PROTECTED]> wrote:
Nice little problem with this pom file here http://www.ibiblio.org/maven2/org/codehaus/cargo/cargo-core-uberjar/0.8/cargo-core-uberjar-0.8.pom Its one of the composite artifacts: <parent> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-core</artifactId> <version>0.8</version> </parent> Every child is pulled in using the ${version} property, which is set to something else, resulting in an error. <dependency> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-core-api-generic</artifactId> <version>${version}</version> <scope>test</scope> </dependency> leading to : [ivy:resolve] maven2: bad revision found in http://www.ibiblio.org/maven2/org/codehaus/cargo/cargo-core-uberjar/0.8/cargo-core-uberjar-0.8.pom : expected='0.8 found='SNAPSHOT'
Yes, Ivy has only a limited suport for poms, and do not handle pom inheritance for the moment. However I'm surprised of the error raised, Ithought it was fixed in Ivy 1.4. But we had several issues related to pom handling (I wrote pom parsing without a real good knowledge of how poms really work), fixed some, but still have a lot. I sometimes regret to have introduced this, it causes more problem than it ease the integration of existing metadata. I'd hope that before artifacts get published to the repository, they get
resolved to absolute values, but I can see that isnt the case.
In Ivy we try to make ivy files independent from anything else once published. For example in an ivy file you can import configurations declared in a separate file, but when you publish it the file is inlined, so that it's easier to reproduce the build later. With poms this is not the case, and makes it more difficult to implement the pom compatibility in Ivy. Xavier Paolo,
how does your pom2rdf tool handle that file? -Steve
