Merge remote-tracking branch 'origin/eclipse-integration'
This commit is contained in:
commit
1e860374e2
3 changed files with 123 additions and 2 deletions
4
.gitignore
vendored
4
.gitignore
vendored
|
@ -27,6 +27,10 @@ pom.xml.*
|
|||
.settings
|
||||
.metadata
|
||||
|
||||
#Eclipse/Gradle integration
|
||||
libs
|
||||
project.properties
|
||||
|
||||
#IntelliJ IDEA
|
||||
.idea
|
||||
*.iml
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
apply plugin: 'com.android.application'
|
||||
apply from: 'copyLibs.gradle' // enable 'copyLibs.gradle' script plugin
|
||||
apply plugin: 'eclipse'
|
||||
|
||||
android {
|
||||
compileSdkVersion 19
|
||||
buildToolsVersion "19.1.0"
|
||||
|
||||
defaultConfig {
|
||||
applicationId "com.zeapo.pwdstore"
|
||||
minSdkVersion 15
|
||||
|
@ -23,7 +24,7 @@ repositories {
|
|||
}
|
||||
|
||||
dependencies {
|
||||
compile fileTree(dir: 'libs', include: ['*.jar'])
|
||||
//compile fileTree(dir: 'libs', include: ['*.jar'])
|
||||
compile project(':libraries:openpgp-api-lib')
|
||||
compile 'org.eclipse.jgit:org.eclipse.jgit:3.4.1.+'
|
||||
compile 'org.apache.commons:commons-io:1.3.2'
|
||||
|
@ -31,3 +32,8 @@ dependencies {
|
|||
transitive = true
|
||||
}
|
||||
}
|
||||
tasks.findAll { // make all tasks whose name starts with 'assemble'...
|
||||
it.name.startsWith 'assemble'
|
||||
}.each { // ... depending on 'copyDependenciesIntoLibs' task from 'copyLibs.gradle' script plugin
|
||||
it.dependsOn copyDependenciesIntoLibs
|
||||
}
|
||||
|
|
111
app/copyLibs.gradle
Normal file
111
app/copyLibs.gradle
Normal file
|
@ -0,0 +1,111 @@
|
|||
class CopyJars extends DefaultTask {
|
||||
|
||||
@InputFiles
|
||||
FileCollection source
|
||||
|
||||
@OutputDirectory
|
||||
File destination
|
||||
|
||||
@TaskAction
|
||||
void apply() {
|
||||
project.copy {
|
||||
from source
|
||||
into destination
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class ExtractAars extends DefaultTask {
|
||||
|
||||
@Input
|
||||
boolean extractJarsOnly = false
|
||||
|
||||
@InputFiles
|
||||
FileCollection source
|
||||
|
||||
@OutputDirectory
|
||||
File destination
|
||||
|
||||
@TaskAction
|
||||
void apply() {
|
||||
source.each { File file ->
|
||||
def baseFilename = file.name.lastIndexOf('.').with {
|
||||
it != -1 ? file.name[0..< it] : file.name
|
||||
}
|
||||
|
||||
if (extractJarsOnly) {
|
||||
project.copy {
|
||||
from project.zipTree(file)
|
||||
include 'classes.jar'
|
||||
into destination.name
|
||||
rename {
|
||||
String fileName -> fileName.replace('classes.jar', baseFilename + '.jar')
|
||||
}
|
||||
}
|
||||
} else {
|
||||
project.copy {
|
||||
from project.zipTree(file)
|
||||
exclude 'classes.jar'
|
||||
into destination.absolutePath + File.separator + baseFilename
|
||||
}
|
||||
|
||||
project.copy {
|
||||
from project.zipTree(file)
|
||||
include 'classes.jar'
|
||||
into destination.absolutePath + File.separator + baseFilename +
|
||||
File.separator + destination.name
|
||||
rename {
|
||||
String fileName -> fileName.replace('classes.jar', baseFilename + '.jar')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task ('copyJarDependenciesIntoLibs', type: CopyJars) {
|
||||
|
||||
description = 'Used for Eclipse. Copies JAR dependencies to the libs directory.'
|
||||
|
||||
destination = file(project.projectDir.canonicalPath + File.separator + 'libs')
|
||||
|
||||
afterEvaluate {
|
||||
source = files(
|
||||
project.configurations.matching {
|
||||
it.name.endsWith 'Compile' or it.name == 'compile'
|
||||
}.each {
|
||||
logger.info "Adding dependencies from ${it.name} configuration."
|
||||
}
|
||||
).filter {
|
||||
it.name.endsWith 'jar'
|
||||
}
|
||||
logger.info source.files.toString()
|
||||
}
|
||||
}
|
||||
|
||||
task ('extractAarDependenciesIntoLibs', type: ExtractAars) {
|
||||
|
||||
description = 'Used for Eclipse. Extracts AAR dependencies into the libs directory.'
|
||||
|
||||
destination = file(project.projectDir.canonicalPath + File.separator + 'libs')
|
||||
|
||||
afterEvaluate {
|
||||
source = files(
|
||||
project.configurations.matching {
|
||||
it.name.endsWith 'Compile' or it.name == 'compile'
|
||||
}.each {
|
||||
logger.info "Adding dependencies from ${it.name} configuration."
|
||||
}
|
||||
).filter {
|
||||
it.name.endsWith 'aar'
|
||||
}
|
||||
logger.info source.files.toString()
|
||||
}
|
||||
}
|
||||
|
||||
task copyDependenciesIntoLibs {
|
||||
dependsOn copyJarDependenciesIntoLibs, extractAarDependenciesIntoLibs
|
||||
description = 'Used for Eclipse. Copies JAR and extracts AAR dependencies into the libs ' +
|
||||
'directory.'
|
||||
}
|
||||
|
Loading…
Reference in a new issue