2017-03-06 12 views
0

私はArtifactoryでホストしている一連のライブラリを用意しています。 1つのライブラリに、新しいメソッドが作成された場所に最近の変更が導入されました。MavenバージョンではなくAARを指定してください

コアプロジェクトにいくつかの他のライブラリがあり、Artifactoryバージョンではなく、開発用ローカルバージョンを指す設定変更があります。

したがって、ライブラリBの新しいメソッドを呼び出すと、コアライブラリAから正常に動作しますが、ライブラリBのメソッドをパッケージ内の別のクラスから呼び出すと失敗します。

最新のリリースのキャッシュから分解されたaarをロードしようとしています。これはビルド、そして最終的には製品のリリースを中止することです。ここで

は、ライブラリ

私は、彼らがそれ自身のパッケージ内の別のクラス/メソッドを呼び出しているとき、Javaクラスということを保証するために確立する必要があるん何の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:[email protected]') { transitive = true } 
    compile 'com.internal.dependency.one:i-d-o:[email protected]' 
    compile 'com.internal.dependency.two:i-d-t:[email protected]' 
} 

apply from: '../../gradle/script/artifactory.gradle' 

のbuild.gradleですMavenの最新のAARではなく、そのクラスのローカル開発版を指していますか?

+0

質問は明確ではありません。それは、「図書館を指すために」とはどういう意味ですか? –

+0

申し訳ありませんが、私は編集を試みます –

答えて

0
  1. まず、正しい人工物が適切なバージョン番号で公開されているかどうかを確認します。
  2. メインプロジェクトに移動し、依存関係を確認します。正しいアーティファクトを反映するようにバージョンを変更します。
  3. Android Studioを使用している場合は、[ファイル] - > [キャッシュを無効にして再起動する]を選択できます。これはあなたの最新のアーティファクトを持ち、古いものをきれいにするはずです。
  4. いつでもapp-> build-> intermediates-> exploded-aar-> に行くことができます。ここでは、アールのリストが表示されます。
  5. 各ライブラリが正しいアーティファクトバージョンを指していることを確認してください。
+0

#1は問題ではありません... #3完了しました #5私はかなり問題ではない –

関連する問題