-SNAPSHOT
すべての依存関係をローカルサブプロジェクトに置き換えようとしています。それが正常に動作しますが、私は問題を持っている:私は、私が使用したいプロジェクト構成を定義することはできません(それはruntime
を拡張した、default
を取り、私はそれをしたくない):プロジェクト構成を使用したGradle依存関係置換
configurations.all {
resolutionStrategy.dependencySubstitution {
all { dependency ->
if (!dependency.requested.version.endsWith('SNAPSHOT'))
return
def isRootProject = rootProject.name.equals(dependency.requested.module)
def matching = rootProject.subprojects.find {
it.name.equals(dependency.requested.module)
}
if (isRootProject)
dependency.useTarget rootProject
else if (matching)
// The specified syntax with path: and configuration: does not work. How can I do ?
dependency.useTarget project(path: ":" + dependency.requested.module, configuration: 'compile')
else
println 'Keep SNAPSHOT: ' + dependency.requested.module;
}
}
}
私が知っていますなぜ動作しないのか、ドキュメントはかなり明確です。https://docs.gradle.org/current/javadoc/org/gradle/api/artifacts/DependencySubstitutions.html#project%28java.lang.String%29は設定名をサポートしていません。
この制限には、既知の回避策がありますか?あなたのsettings.gradleファイルで