【问题标题】:Gradle is failing to build with JCenter (using Unity + Firebase)Gradle 无法使用 JCenter 构建(使用 Unity + Firebase)
【发布时间】:2019-05-23 06:22:56
【问题描述】:

所以我将 Firebase 更新到了最新版本(在我的 Unity 游戏中),因为我之前的 Firebase 版本在 iOS 设备上运行时出错。现在我无法使用 gradle 为 android 设备构建。

Unity 版本:2018.2.0f2 Firebase 版本:5.4.3

我收到此错误:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':Firebase'.
> Could not resolve all files for configuration ':Firebase:classpath'.
   > Could not find manifest-merger.jar (com.android.tools.build:manifest-merger:26.0.1).
     Searched in the following locations:
         https://jcenter.bintray.com/com/android/tools/build/manifest-merger/26.0.1/manifest-merger-26.0.1.jar
   > Could not find ddmlib.jar (com.android.tools.ddms:ddmlib:26.0.1).
     Searched in the following locations:
         https://jcenter.bintray.com/com/android/tools/ddms/ddmlib/26.0.1/ddmlib-26.0.1.jar
   > Could not find dvlib.jar (com.android.tools:dvlib:26.0.1).
     Searched in the following locations:
         https://jcenter.bintray.com/com/android/tools/dvlib/26.0.1/dvlib-26.0.1.jar
   > Could not find common.jar (com.android.tools:common:26.0.1).
     Searched in the following locations:
         https://jcenter.bintray.com/com/android/tools/common/26.0.1/common-26.0.1.jar

因此,JCenter 似乎缺少最新版本的 firebase 所需的一些文件。我读过将 google() 放在应用程序 .gradle 文件中的 jcenter() 之上应该会强制它首先查看 googles maven repo,但似乎没有来帮忙。

我的项目 gradle 文件如下所示:

buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
}

allprojects {
    repositories {
        flatDir {
            dirs 'libs'
        }
    }
}

我尝试更改了很多东西,但没有解决这个问题。 一些帮助将不胜感激。

【问题讨论】:

  • allprojects 没有存储库。
  • @MartinZeitler 我将 google()jcenter() 添加到了我的 allprojects 存储库中。它不会改变任何错误。不过感谢您的建议!
  • 我在添加 firebase 后遇到了同样的情况。这个问题有什么解决办法吗?
  • @IndikaWijesooriya 尚无解决方案。

标签: android firebase unity3d gradle jcenter


【解决方案1】:

嘿,我遇到了同样的问题,对我有用的是

1.更改项目 gradle 文件以及项目中所有其他模块中 jcenter 和 google 的位置。就像我的一样,我有 crashlytics、fabric 所以只记得在他们的 build.gradle 文件中进行更改

 buildscript {
    repositories {
      jcenter()
      google()
 }

 buildscript {
    repositories {
      google()
      jcenter()
 }

2。在再次构建您的项目之前,请转到您的项目文件夹并从您的项目中删除 .gradle 文件夹,然后构建您的项目。

【讨论】:

  • 感谢您的提示。我看到你的方法对很多人都有效。但是我试过了,还是有问题。最后我升级了 Unity 和 Firebase,这解决了我的问题。
【解决方案2】:

所以,我遇到了完全相同的问题并尝试了很多。 对我有用的是清除我的 %Userfolder% 中的 .gradle 文件夹 当你构建它时,它会再次下载整个文件夹(Unity 会说它崩溃了,但 Java 正在变得强大)。之后我可以再次构建!

希望这行得通!

【讨论】:

  • 您好,谢谢您的提示!我最终升级了 Unity 和 Firebase,哈哈。这很痛苦,但结果最终奏效了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多