How to create a library on Github and use it throu

2019-01-21 14:03发布

问题:

I want to create the library and have access to it through the Internet. In Android Studio (via Gradle) dependency may be added in this way:

In build.gradle (Module app):

dependencies {
    ...
    compile 'com.android.support:design:23.1.0'
    compile 'com.squareup:otto:1.3.8'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.j256.ormlite:ormlite-core:4.48'
    compile 'com.j256.ormlite:ormlite-android:4.48'
    ...
}

How can I add my own library in this way from github?

回答1:

Refer Jitpack is best to import your project or libs from Github to gradle

For more information refer Gabriele Mariotti answer



回答2:

To achieve it you have some ways:

  1. publish your library (artifact) in central maven or jcenter.
  2. use a github repo and the jitpack plugin
  3. use a private maven

The point 2. is very simple.

Just push your codein github and modify the gradle script in the project where you want to use it.

Just add this repo tp your build.gradle

repositories {
        // ...
        maven { url "https://jitpack.io" }
    }

and the dependency:

dependencies {
        compile 'com.github.User:Repo:Tag'
    }

To publish a library in Central Maven or JCenter, it is very long to explain in an answer. Hovewer you can read these posts:

  • Publish on JCenter

  • Publish on Central Maven. Another blog for Central Maven



回答3:

For a quick solution, as the others have said JitPack is probably the way to go. However, if you want to make your library available to a wider audience you should probably add it to jcenter since this is set up by default in Android Studio now. (Previously it was Maven Central.)

This post gives a detailed walkthrough of how to do it. The following is a summary:

  1. Create the Android library
  2. Test to make sure the library is usable locally
  3. Publish the library on Bintray
  4. Add the library to Jcenter

Then all people will have to do to use your library is add a one liner to their build.gradle dependencies.