【问题标题】:Ionic cordova build android failed: Exception in thread "main" java.lang.NullPointerExceptionIonic cordova build android 失败:线程“main”java.lang.NullPointerException 中的异常
【发布时间】:2019-11-05 22:25:59
【问题描述】:

我正在 Ionic 上做一个应用程序。问题是当我想为 Android 编译时。它给了我一个错误。我已经尝试了很多东西,但它不起作用。我是这方面的新手,也许我做错了什么,所以这就是我寻求你帮助的原因。我会把所有的信息都放在这里,希望你能帮助我。

我使用的是 Windows 10。这是终端显示的错误

    > cordova.cmd build android
Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=C:\Users\cesal\AppData\Local\Android\Sdk (recommended setting)
ANDROID_HOME=C:\Program Files\Java\jdk1.8.0_231 (DEPRECATED)
Subproject Path: CordovaLib
Subproject Path: app
Exception in thread "main" java.lang.NullPointerException
        at org.gradle.wrapper.PathAssembler.getDistName(PathAssembler.java:84)
        at org.gradle.wrapper.PathAssembler.getDistribution(PathAssembler.java:40)
        at org.gradle.wrapper.Install.createDist(Install.java:44)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:63)
D:\OneDrive\Documentos\Proyecto Fashioner\Aplicacion\fashioner-app\Fashioner\platforms\android\gradlew: Command failed with exit code 1 Error output:
Exception in thread "main" java.lang.NullPointerException
        at org.gradle.wrapper.PathAssembler.getDistName(PathAssembler.java:84)
        at org.gradle.wrapper.PathAssembler.getDistribution(PathAssembler.java:40)
        at org.gradle.wrapper.Install.createDist(Install.java:44)
        at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:107)
        at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:63)
[ERROR] An error occurred while running subprocess cordova.

        cordova.cmd build android exited with exit code 1.

        Re-running this command with the --verbose flag may provide more information.

我的 Ionic 的信息是这样的:

ionic info

Ionic:

   Ionic CLI                     : 5.4.2 (C:\Users\cesal\AppData\Roaming\npm\node_modules\ionic)
   Ionic Framework               : @ionic/angular 4.10.0
   @angular-devkit/build-angular : 0.801.3
   @angular-devkit/schematics    : 8.1.3
   @angular/cli                  : 8.1.3
   @ionic/angular-toolkit        : 2.0.0

Cordova:

   Cordova CLI       : 9.0.0 (cordova-lib@9.0.1)
   Cordova Platforms : android 8.1.0
   Cordova Plugins   : cordova-plugin-ionic-keyboard 2.2.0, cordova-plugin-ionic-webview 4.1.2, (and 7 other plugins)

Utility:

   cordova-res : 0.8.1

System:

   NodeJS : v10.16.0 (C:\Program Files\nodejs\node.exe)
   npm    : 6.11.3
   OS     : Windows 10

cordova 的要求如下:

cordova requirements

Requirements check results for android:
Java JDK: installed 1.8.0
Android SDK: installed true
Android target: installed android-29,android-28,android-27
Gradle: installed C:\Gradle\gradle-5.6.4\bin\gradle

所以,我不确定问题是否出在系统的环境变量上。我添加了我在不同论坛上看到的,但它不起作用。这里有截图:

my environment variables

这是我的 PATH 变量:

PATH Variable

请帮帮我,我不知道如何处理这个问题。我希望你能帮助我。谢谢

【问题讨论】:

  • 尝试使用 --verbose 选项来调试错误

标签: android cordova ionic-framework compilation


【解决方案1】:

我花了将近 2 天的时间来寻找解决方案

请在环境变量中删除它

希望能成功

CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL

【讨论】:

  • 我确实有旧版本的 Gradle 的环境变量。删除它使我使用较新的版本并解决了我的问题。
【解决方案2】:

尝试从 android studio 中清理项目,然后重新构建。

【讨论】:

  • 我该怎么做呢?我是这方面的新手。请更具体
  • 在Android studio顶部菜单,你会找到build,点击它可以看到下拉列表,在列表的下方你会发现clean,然后rebuild。先打干净,然后当它完成后,重建让我们看看。
【解决方案3】:

尝试删除所有与项目无关的文件夹。我的意思是,诸如节点模块、平台、插件之类的文件夹......那种文件夹(任何可能在.gitignore 中的东西)。然后,使用npm install 并等待它完成。测试是否一切正常(如果你愿意,可以使用ionic serve)然后再试一次。这对我有用。

【讨论】:

    猜你喜欢
    • 2018-03-19
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    • 1970-01-01
    • 2013-11-21
    • 1970-01-01
    • 1970-01-01
    • 2018-06-07
    相关资源
    最近更新 更多