我有一系列我在Artifactory上托管的库。一个库最近引入了一个新方法,其中创建了一个新方法。
我的项目设置我的核心项目包含其他几个库,并且有一个配置更改指向我的本地版本,而不是用于开发而不是Artifactory版本。
所以......在库B中调用新方法可以很好地从核心库A中运行。但是从库中的另一个类调用库B中的方法会失败。
它正在尝试从最新版本的缓存加载爆炸的aar。这是停止构建,最终是产品发布。
这是图书馆的build.gradle
apply plugin: 'com.android.library'
apply from: '../../gradle/script/dependencies.gradle'
buildscript {
apply from: '../../gradle/script/buildscript.gradle'
repositories {
myMaven()
}
dependencies {
classpath "com.android.tools.build:gradle:$ext.gradleBuildToolsVersion"
classpath 'org.jfrog.buildinfo:build-info-extractor-gradle:4.0.0'
}
}
apply from: "../../gradle/script/buildscript.gradle"
repositories {
myMaven()
}
def globalConf = rootProject.ext
// Artifactory versions
ext {
artifactPackageName = "com.foo.library"
artifactVersion = "5.9.25"
artifactName = "foo"
artifactoryRepo = 'android'
}
android {
compileSdkVersion globalConf.androidTargetSdkVersion
buildToolsVersion globalConf.androidBuildToolsVersion
defaultConfig {
minSdkVersion globalConf.androidMinSdkVersion
targetSdkVersion globalConf.androidTargetSdkVersion
versionCode 1
versionName project.ext.artifactVersion
}
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:23.1.1') { exclude module: 'support-v4' }
compile('com.foo.library:core:5.9.25@aar') { transitive = true }
compile 'com.internal.dependency.one:i-d-o:5.9.15@aar'
compile 'com.internal.dependency.two:i-d-t:5.9.15@aar'
}
apply from: '../../gradle/script/artifactory.gradle'
我需要建立什么gradle配置才能确保Java类在调用其自己的包中的另一个类/方法时指向该类的本地开发版本,而不是最近来自Maven的AAR?
答案 0 :(得分:0)