How can I ignore bad pom 'inconsistent module descriptor' and download jar?

One of my dependencies has an error in the pom so Ivy fails, even when I just request the jar:

compile “org.milyn:flute:1.3@jar”

Could not resolve all dependencies for configuration ':compile'.
> Could not resolve group:org.milyn, module:flute, version:1.3.
  Required by:
      :MyProject:1.0
      :MyProject:1.0 > org.eclipse.birt.runtime:org.eclipse.birt.runtime:4.2.0
   > java.text.ParseException: inconsistent module descriptor file found in 'Http GET Resource: http://repo1.maven.org/maven2/org/milyn/flute/1.3/flute-1.3.pom': bad organisation: expected='org.milyn' found='milyn';

How can get Gradle to ignore the bad pom and just download the jar?

If you use a repository manager, fix the POM. I agree that ‘@jar’ should work, but it’s a known limitation that it doesn’t. Another thing to try is ‘compile("…") { transitive = false }’. If that doesn’t work either, there may not be a way to ignore an invalid POM.

As a last resort, you could try to address the Maven repository as an Ivy repository.

Thanks, go it working with:

compile files('lib/flute-1.3.jar')
compile(group: 'org.eclipse.birt.runtime', name: 'org.eclipse.birt.runtime', version: '4.2.0') {
        exclude(group: 'org.milyn', module: 'flute')
    }

If you don’t even require the Jar, that’s certainly the way to go.

Thanks, that worked for me too.