Search code examples
javagradlemaven-centraljcenterlazybones

How are JCenter and Maven Central coordinates different from one another?


I am trying to include LazyBones, which is stored here in Bintray/JCenter in my Gradle project as a compile-time dependency, like so:

repositories {
    mavenLocal()
    mavenCentral()
    jcenter()
}

dependencies {
    compile 'com.typesafe.akka:akka-actor_2.10:2.3.12'
    compile 'org.codemonkey.simplejavamail:simple-java-mail:2.3'
    compile 'pledbrook/lazybones-templates:lazybones:0.8.1'     // <-- here
}

I have tried many other combination/permutations of group/artifact names for the 0.8.1 version, but nothing is working/resolving. This is the first time I’ve ever (intentionally) tried depending on a compile binary that is only stored in JCenter, and not available via Maven Central. So I ask: what’s the difference between Maven Central and JCenter coordinates, and what do I need to do so that Gradle can “find” the LazyBones JAR living in JCenter?


Solution

  • The thing with this Lazybones artifact is that it's not a maven artifact. It's a zip, not in maven layout, and from what I know about Lazybones it's not supposed to be used directly as a dependency from Gradle/Maven. That's why you can't use the normal coordinates.