【发布时间】:2015-08-24 17:22:43
【问题描述】:
我在我的项目中创建了一个新的 Android 库模块作为测试库。这是一个简单的模块,有一个类和一个返回字符串的静态方法。我有在本地运行的 Artifactory 服务器,并希望将我的 Android 库/模块推送到它。我从 Artifactory Web 界面生成了 Gradle 脚本和 gradle 属性。我的 testLib 模块中的 build.gradle 现在看起来像这样:
apply plugin: 'com.android.library'
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
minSdkVersion 14
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.1'
}
/////
buildscript {
repositories {
maven {
url 'http://localhost:8081/artifactory/plugins-release'
credentials {
username = "${artifactory_user}"
password = "${artifactory_password}"
}
}
}
dependencies {
//Check for the latest version here: http://plugins.gradle.org/plugin/com.jfrog.artifactory
classpath "org.jfrog.buildinfo:build-info-extractor-gradle:3.1.1"
}
}
allprojects {
apply plugin: "com.jfrog.artifactory"
}
artifactory {
contextUrl = "${artifactory_contextUrl}" //The base Artifactory URL if not overridden by the publisher/resolver
publish {
repository {
repoKey = 'libs-release-local'
username = "${artifactory_user}"
password = "${artifactory_password}"
maven = true
}
}
resolve {
repository {
repoKey = 'libs-release'
username = "${artifactory_user}"
password = "${artifactory_password}"
maven = true
}
}
}
添加之后,我运行了./gradlew artifactoryPublish 命令。它说构建成功。然后,我将工件 Web 应用程序转到存储库浏览器,并在 libs-release-local 下查看,它的工件计数为 0。我做错了什么?
【问题讨论】:
-
以前从未与本地 AAR 合作过,但我用这个人来帮助弄清楚这些东西是如何工作的。也许它会帮助你? github.com/blundell/release-android-library
-
感谢您的链接,但我无法利用该存储库来发挥我的优势... =(
标签: android gradle artifactory