【问题标题】:How to fix "JAVA_HOME environment references a directory" in unity3d如何在unity3d中修复“JAVA_HOME环境引用目录”
【发布时间】:2019-11-05 10:01:06
【问题描述】:

我在这个屏幕截图上显示了一个问题:

当我导入 GoogleMobileAds 包以将 AdMob 广告插入我的项目时,问题出现了。我尝试使用本指南 https://null-code.ru/solution/157-reshenie-exception-jar-not-found-windows.html 在环境变量中创建 2 个局部变量“JAVA_HOME”和“PATH”,但这对我没有帮助。

【问题讨论】:

    标签: java c# unity3d build admob


    【解决方案1】:

    这是一个 Unity 错误。修复:

    Edit->Preferences->External Tools
    Uncheck Android SDK Tools Installed with Unity (recommended)
    Press Browse -> It might update the filepath
    Recheck Android SDK Tools Installed with Unity (recommended)
    

    然后:

    Assets->Play Services Resolver->Android Resolver->Resolve
    

    这已经过测试,可与 Unity 2019 和 Unity 2020 一起使用。

    【讨论】:

    • 谢谢,Unity 2019.2.19 也解决了这个问题
    • .. 和 2019.3.0f6 :)
    • 类似的东西在 Linux Mint(基于 Ubuntu 的发行版)上对我有用。在我取消选中 Installed SDK Tools 选项后,我只需要同意建议的 JDK 版本,然后我再次检查它。
    • 这似乎可以正常工作,但您可能需要使用 JDK 路径设置而不是 SDK 路径设置来执行相同的过程。
    • 我还必须删除“C:\Users\[USER_NAME]\.gradle”文件夹。
    【解决方案2】:

    试试 Assets-> Play Services Resolver-> Android Resolver-> 删除已解析的库

    【讨论】:

    • 我还必须删除已解析的库!
    • 这里也一样。这工作得很好
    【解决方案3】:

    检查您的 Java 设置是否为真: 转到 cmd 并输入 JAVA -version 如果出现这意味着您的 JDK 已设置,如果不检查此链接:https://confluence.atlassian.com/doc/setting-the-java_home-variable-in-windows-8895.html

    在这些之后,如果你有问题再次更新你的 JDK 来自https://www.oracle.com/technetwork/java/javase/downloads/index.html

    【讨论】:

    • 这对我没有帮助。也许我需要下载 JDK 8 Update 212?如果存在。
    【解决方案4】:

    我在我的项目中使用了 admob 插件,这就是我在尝试了所有给定的解决方案后解决问题的方法。

    • 重新导入您在项目中使用的 admob 插件/插件。 (我只是重新导入最新版本的 admob 插件并解决问题)

    【讨论】:

      【解决方案5】:

      对我来说,这与https://stackoverflow.com/a/57361245/2149955 的答案相似,但略有不同,因此当您尚未通过统一中心安装工具时,请分享一个单独的答案。

      在统一中:

      Edit->Preferences->External Tools
      See error messages "You are missing the recommended <TOOL>. Install the recommended version using Unity Hub"
      

      在 Unity Hub 中:

      Installs -> My Unity Version -> ... -> Add Modules, Twirl open Android Build Support -> Check Android SDK & NDK Tools (I also checked OpenJDK)
      Press Next -> Accept Terms
      Wait for install to finish
      

      完成后,返回 Unity:

      If you look in external tools again, the error messages will be gone
      Assets->Play Services Resolver->Android Resolver->Resolve
      

      【讨论】:

        【解决方案6】:

        更新到 Unity 2019.4.10f 修好了

        【讨论】:

          【解决方案7】:

          当我想为 Android 开发一个应用程序时,我遇到了这个错误以及更多错误。没有任何效果,包括这里的解决方案。 Unity 2020.3.5f1 和 2019.4.22f1 两个版本都试过了,都不行。

          我发现问题是由于“Android Built Support”没有完全安装造成的。我做了以下,问题就消失了:

          1. Unity Hub(我的版本 2.4.3)-> 从左侧菜单中转到安装
          2. 点击你想要的Unity版本右上角3个点(我用的是2019.4.22f1)->添加模块
          3. 从平台中,找到“Android 内置支持”
          4. 它的复选框被勾选了,因为我之前安装了它,但是如果你没有它,请先安装它
          5. 用左侧的箭头显示其子模块; “Android SDK & NDK 工具”和“OpenJDK”
          6. 选中他们的复选框,然后安装
          7. 重启 Unity
          8. 当您打开项目时,它会解析
          9. 解决后它又给了我一个警告,所以我再次在项目中执行“Assets->External Dependency Maneger->Android Resolver->Force Resolve”以确保问题已解决。

          【讨论】:

            【解决方案8】:

            当我想为 Android 构建时遇到了这个错误。我遇到这个问题的原因是我有 2 个 Unity 版本(2019.4.9f1 和 2020.3.3f1),并且我的 JAVA_HOME 配置为使用 2019.4.9f1 中的 java 文件夹。然后我卸载并删除了 2019.4.9f1,然后在尝试构建 2020.3.3f1 时出现此错误。

            1. 我通过以下链接永久更改了我的 JAVA_HOME 变量: How to set JAVA_HOME in Mac permanently?

            2. 重新启动我的 Macbook。

            3. 去Unity -> Preferences -> External tools,取消勾选NDK、JDK等,点击出现的Browse按钮,为JDK手动选择2020.3.3f1下的文件夹。

            (最后,取消选中并再次选中时不会更改任何文件夹)

            【讨论】:

              【解决方案9】:

              简单的修复。我收到了有关缺少 JDK 的消息。如果您有类似的或指向错误的 JDK,您可以尝试此修复。

              这是我得到的错误:

              我通过以下方式解决了这个问题:

              1. 在 Unity 中转到“编辑->首选项->外部工具”
              2. 取消选中“使用 Unity 安装 JDK(推荐)”框,并注意到路径指向我已卸载的旧版 Unity。
              3. 将路径更改为我正在使用的 Unity 的当前版本,OpenJDK 目录。
              4. 重新选中“使用 Unity 安装 JDK(推荐)”复选框

              然后能够构建我的游戏,并构建到我的安卓手机就好了。 注意:如果您在使用 SDK 或 NDK 时遇到问题,您可以尝试此解决方案,取消选中并重新选中它们各自的复选框。

              【讨论】:

                猜你喜欢
                • 2016-09-11
                • 2021-09-16
                • 2017-11-24
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2019-08-09
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多