How to Get Dependencies from Jcenter with a New Project

Unable to get dependencies from jcenter with a new project

jcenter is currently down. In the end adding mavenCentral() to both sets of repositories in the project build.gradle file worked as a workaround for me:

buildscript {
repositories {
mavenCentral()
google()
jcenter()

...

allprojects {
repositories {
mavenCentral()
google()
jcenter()

...

Are dependencies from jcenter compiled into aar library?

The AAR file just contains the compiled dex code, manifest (partial) and resources for the library. When you copied the jar file for joda-time into your project, it gets built into the AAR. When using gradle dependencies, gradle (and therefore Android Studio) know how to resolve the joda-time library for building your AAR, but that is it. Since your AAR is being published on jcenter, you need to have a maven manifest for your AAR which also lists joda-time as a dependency. After that projects will be able to list just your library as a dependency and the dependency on joda-time will be resolved by gradle (via its maven support.)

Using Jcenter with gradle in Android studio

com.sparetimelabs:purejavacomm:0.0.22 is a transitive dependency of IOIO project. The problem is that Spare time labs has their own repository and doesn't publish their artifacts to Bintray. What you need to do is to add their repository to the list of your repositories in Gradle:

repositories {
jcenter()
maven {
url 'http://www.sparetimelabs.com/maven2'
}
}

Android Studio Gradle: Please remove usages of `jcenter()` Maven repository from your build scripts / JCenter is at end of life

For koin, change the group id from org.koin to io.insert-koin - the latter is published on maven central.

For chartboost, you can use the following repo:

maven {
url "https://dl.bintray.com/google/mobile-ads-adapters-android/"
}

Also note that there are newer versions such as koin 2.2.2 / 3.0.1 and chartboost 8.2.0.0. Older versions are likely not republished in non-jcenter repos.

mvnrepository is a good service for locating packages.

Android Studio does not import dependency from jCenter or Maven Central

Do you mean to have <packaging> type to be pom inside your .pom file?

http://repo1.maven.org/maven2/com/github/kostasdrakonakis/spinner-preference/1.0.0/spinner-preference-1.0.0.pom

http://jcenter.bintray.com/com/github/kostasdrakonakis/spinner-preference/1.0.0/:spinner-preference-1.0.0.pom

Typically I would expect this to be aar.

Android studio - internally search for dependencies in jcenter or maven central

In Project Structure > Dependencies > + button > Library dependency, there's a search function.

JCenter deprecation; impact on Gradle and Android

The latest update as mentioned here in JFrog's website is the following:

UPDATE 4/27/2021: We listened to the community and will keep JCenter as a read-only repository indefinitely. Our customers and the community can continue to rely on JCenter as a reliable mirror for Java packages.

which maven repository after jcenter died?

It depends on where your dependencies are hosted. Not all libraries are yet migrated off jcenter yet. Generally, mavenCentral seems to be the most popular repo.

You can comment out jcenter in your build.gradle file, invoke gradle build with --refresh-dependencies command line option and see if the build is failing somewhere. You can use mvnrepository service to try to find other repos for your dependencies.

If there are still dependencies that are only in jcenter, you can restrict gradle to only use that specific dependency from that repo:

jcenter() {
content {
includeModule("<group id>", "<artifact id>")
}
}


Related Topics



Leave a reply



Submit