Próbuję opublikować wygenerowany plik aar z mojej biblioteki Android na mój serwer Apache Archiva Maven, ale nie udało mi się go jeszcze uruchomić, ponieważ albo Przykładami są nieaktualne czy są one dla java a nie dla androidJak opublikować plik AAR do Apache Archiva z Gradle
Po zauważeniu, że większość metod z Gradle przykładami są nieaktualne, znalazłem tę nową dokumentację:
który opisuje jak korzystać z nowego interfejsu API, który wydaje się zastąpić uploadArchives z publikowania i tak dalej ....
Więc to, co Ive got do tej pory:
apply plugin: 'com.android.library'
apply plugin: 'maven'
apply plugin: 'maven-publish'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.mycompany.mylibrary"
minSdkVersion 9
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
lintOptions {
abortOnError false
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:support-v4:21.0.3'
compile 'com.android.support:appcompat-v7:21.0.3'
}
task sourceJar(type: Jar) {
from sourceSets.main.allJava
}
publishing {
publications {
mavenJava(MavenPublication) {
groupId 'com.android.mylibrary'
artifactId 'MyLibrary'
version '1.0.0'
from components.java
artifact sourceJar {
classifier "sources"
}
}
}
repositories {
maven {
url "myurl"
credentials{
username "user"
password "password"
}
}
}
}
Rzeczy z Gradle są dla mnie jak piekło. Nie wiem, co jest dobre, a co nie, a niektóre rzeczy wydają się być zmieniane bez żadnych wskazówek, że nie jest już wspierany, co sprawia, że trudno jest rozwiązać te problemy ...
Jak mogę automatycznie przesłać wygenerowany plik aar do mojego Apache Archiva?
Jakie to proste i skuteczne rozwiązanie. Pracował jak urok :) –
Ale to nie zbuduje właściwego pliku pom.xml, stracisz dane dependencji, a to bezużyteczne – outlying
Nie ma nic wspólnego z procesem kompilacji, po prostu ładuje aar na twój serwer. Możesz mieć inny problem gdzie indziej. –