我们有一个React Native应用程序,我们必须从公司Nexus存储库下载我的应用程序的所有依赖项。
我们有一个专门的groop存储库,里面有很多存储库。其中一个是maven代理存储库,它指向:https://plugins.gradle.org/m2/b
我们这样配置settings.grandle
:
pluginManagement {
repositories {
maven { url 'URL_OF_NEXUS_GROUP_MAVEN_REPO' }
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS)
repositories {
maven { url 'URL_OF_NEXUS_GROUP_MAVEN_REPO' }
}
}
我们可以从我们的repo下载所有依赖项,但我们只在构建和编译过程中遇到了一个问题:package.json中的一个依赖项是react native keychain,它有这个build.gradle
:
buildscript {
repositories {
maven {
url 'https://plugins.gradle.org/m2/'
}
}
dependencies {
classpath 'com.adarshr:gradle-test-logger-plugin:2.0.0'
}
}
apply plugin: 'com.android.library'
apply plugin: "com.adarshr.test-logger"
为什么我们的settings.gradle
没有像其他设置一样覆盖此设置?
谢谢
我已经解决了删除设置中的更改。gradle ad在HOME/.gradle中创建init.gradle的问题,内容如下:
allprojects {
ext.RepoConfigurator = {
maven {
url = uri('URL_OF_NEXUS_GROUP_MAVEN_REPO')
}
}
buildscript.repositories RepoConfigurator
repositories RepoConfigurator
}
apply plugin: EnterpriseRepositoryPlugin
class EnterpriseRepositoryPlugin implements Plugin<Gradle> {
void apply(Gradle gradle) {
gradle.settingsEvaluated { settings ->
settings.pluginManagement {
repositories {
maven { url 'URL_OF_NEXUS_GROUP_MAVEN_REPO' }
}
}
}
}
}