# Creating your own libraries for Android applications
# Create a library available on Jitpack.io
Perform the following steps to create the library:
apply plugin: 'com.github.dcendents.android-maven'
...
// Build a jar with source files.
task sourcesJar(type: Jar) {
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
}
task javadoc(type: Javadoc) {
failOnError false
source = android.sourceSets.main.java.sourceFiles
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
classpath += configurations.compile
}
// Build a jar with javadoc.
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
artifacts {
archives sourcesJar
archives javadocJar
}
Make sure that you commit/push the above changes to GitHub.
gradlew install
on your code.
compile 'com.github.[YourUser]:[github repository name]:[release tag]'
# Creating library project
To create a libary , you should use File -> New -> New Module -> Android Library
. This will create a basic library project.
When that's done, you must have a project that is set up the following manner:
[project root directory]
[library root directory]
[gradle]
build.gradle //project level
gradle.properties
gradlew
gradlew.bat
local.properties
settings.gradle //this is important!
Your settings.gradle
file must contain the following:
include ':[library root directory]'
Your [library root directory]
must contain the following:
[libs]
[src]
[main]
[java]
[library package]
[test]
[java]
[library package]
build.gradle //"app"-level
proguard-rules.pro
Your "app"-level build.gradle
file must contain the following:
apply plugin: 'com.android.library'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
minSdkVersion 14
targetSdkVersion 23
}
}
With that, your project should be working fine!
# Using library in project as a module
To use the library, you must include it as a dependency with the following line:
compile project(':[library root directory]')