org.gradle.api.InvalidUserCodeException: Build was configured to prefer settings repositories over project repositories but repository 'MavenRepo' was added by build file 'build.gradle'
时间: 2023-08-05 10:13:56 浏览: 59
这个错误通常是由于在 `build.gradle` 文件中同时使用了 settings 和 project repositories 导致的。您可以尝试以下方法来解决该问题:
1. 在 `settings.gradle` 文件中声明您的 settings repository,而不是在 `build.gradle` 文件中声明它。
2. 在 `build.gradle` 文件中移除您的 settings repository,并将其添加到 `settings.gradle` 文件中。
3. 如果您确实需要同时在 `settings.gradle` 和 `build.gradle` 中声明 repository,请在 `settings.gradle` 文件中使用 `includeBuild` 来引用您的项目,并在 `build.gradle` 文件中使用 `mavenLocal()` 来引用本地 Maven 存储库。
请注意,这些解决方案可能需要根据您的具体情况进行适当调整。
相关问题
Build was configured to prefer settings repositories over project repositories but repository 'MavenRepo' was added by build file 'app\build.gradle'
这个警告是因为在你的项目中,Gradle 配置文件 `build.gradle` 中添加了一个名为 `MavenRepo` 的仓库,但是你的 Gradle 配置中也存在一个或多个仓库,Gradle 会优先使用这些仓库而不是你在 `build.gradle` 中定义的仓库。
如果你想要使用 `MavenRepo`,可以在 `build.gradle` 文件中将其放在其他仓库的前面。或者,你也可以在 Gradle 的配置文件中删除其他仓库,以便使用 `MavenRepo`。
具体来说,你可以在 `build.gradle` 文件中添加以下内容:
```gradle
repositories {
maven { url 'MavenRepo的地址' }
// 其他仓库
}
```
这样,在 Gradle 构建时就会优先使用 `MavenRepo` 仓库。
如果你想要删除其他仓库,可以在 Gradle 配置文件中找到类似以下的内容:
```gradle
repositories {
google()
jcenter()
}
```
将其修改为:
```gradle
repositories {
maven { url 'MavenRepo的地址' }
}
```
这样就只使用了 `MavenRepo` 仓库。
Build was configured to prefer settings repositories over project repositories but repository 'maven' was added by build file 'build.gradle'
这个问题是由于在 `build.gradle` 文件中添加了一个名为 `maven` 的存储库,并且构建配置中设置了首选设置存储库而不是项目存储库引起的。这意味着构建系统将使用设置存储库而不是项目存储库。
要解决这个问题,你可以尝试以下几种方法:
1. 将 `maven` 存储库添加到你的构建配置的项目存储库列表中。这样做可以确保构建系统使用项目存储库而不是设置存储库。你可以在 `build.gradle` 文件中查找类似以下内容的代码块并进行相应的修改:
```groovy
repositories {
// ...
maven {
url "https://example.com/maven-repo"
}
// ...
}
```
2. 如果你确实希望首选使用设置存储库,则可以尝试删除 `maven` 存储库的引用,或者将其替换为设置存储库中相应组织或URL的引用。
请确保在更改构建配置之前备份你的项目文件,以便在需要时可以恢复到先前的状态。此外,根据你的具体情况和需求,可能还有其他解决方案可供选择。