IAmYourFaja
IAmYourFaja

Reputation: 56944

EhCache POM is misbehaving

Last month I asked this question because I couldn't get the EhCache jar to pull down into my local Maven cache using the M2E Eclipse plugin.

Now, I am trying to convert several EhCache/Terracotta POM files into Ivy XML files (using the IvyConvertPom task (which works perfectly fine for every other POM in my local repository - and there are hundreds) and it is choking, stating:

impossible convert given pom file to ivy file: java.io.IOException: Impossible to load parent for file:/C:/Users/myUser/jars/net/sf/ehcache/ehcache-terracotta-root/2.5.0/ehcache-terracotta-root-2.5.0.pom. Parent=org.terracotta.forge#forge-parent;2.3 from=C:/Users/myUser/jars\net\sf\ehcache\ehcache-terracotta-root\2.5.0\ehcache-terracotta-root-2.5.0.pom to=C:/Users/myUser/jars\net\sf\ehcache\ehcache-terracotta-root\2.5.0\ivy.xml
Could not find artifact for C:/Users/myUser\jars\net\sf\ehcache\ehcache-terracotta-root\2.5.0\ehcache-terracotta-root-2.5.0.pom

This is happening for all of the following EhCache/Terracotta artifacts:

I'm not sure if this issue is related to the issue I had last month, or if the developers over at EhCache just have a non-standard way of writing their POMs, but this is twice now where Maven (IvyConvertPom uses Maven XSLT under the hood) has choked on doing something with their jars.

Does anything jump out at anybody as being obvious? Otherwise I have to debug Ivy code, which sounds like a painful way to wrap up a Wednesday. I'll do it if I have to, but thought I'd ask here first in case I was missing something glaring.

Thanks in advance!

Upvotes: 0

Views: 1110

Answers (2)

saalehr
saalehr

Reputation: 318

The ehcache versions prior to 2.9.0 have declared terracotta artifacts as a managed dependency supplied by the specific maven repository.

A fix for this bug has made it to ehcache project on Feb 6, 2015 where it became a jar dependency instead.

Upvotes: 0

Tim Eck
Tim Eck

Reputation: 26

I think the problem is that ivy can't resolve org.terracotta.forge#forge-parent;2.3

I'm not expert in ivy or IvyConvertPom, but I think you might need to somehow compel ivy into using the terracotta maven repository:

http://repo.terracotta.org/maven2/

I think I reproduced this problem locally and ran ant with "-d" and I could see it try all the standard maven repos out there, but not all terracotta artifacts are on maven central.

I have no idea how to inform ivy about other repos though, hopefully you know that bit of the puzzle

Upvotes: 0

Related Questions