【问题标题】:Unable to build android with ionic due to JDK-9由于 JDK-9,无法使用 ionic 构建 android
【发布时间】:2016-09-29 02:39:07
【问题描述】:

我有一个ionic 2.0.0-rc0 应用程序,我想构建一个安卓平台。当我跑步时 ionic run android ,它在两者之间失败。 StackTrace-

   > ionic-hello-world@ build /home/raj/ionic/github
    > ionic-app-scripts build
    [07:46:11]  ionic-app-scripts 0.0.23
    [07:46:11]  build prod started ...
    [07:46:11]  clean started ...
    [07:46:11]  clean finished in 9 ms
    [07:46:11]  copy started ...
    [07:46:11]  ngc started ...
    [07:46:11]  lint started ...
    [07:46:11]  copy finished in 171 ms
    [07:46:12]  lint finished in 960 ms
    [07:46:26]  ngc finished in 15.36 s
    [07:46:26]  bundle prod started ...
    [07:46:34]  bundle prod finished in 8.27 s
    [07:46:34]  sass started ...
    [07:46:36]  sass finished in 1.67 s
    [07:46:36]  minify started ...
    [07:46:36]  cleancss started ...
    [07:46:36]  uglifyjs started ...
    [07:46:47]  uglifyjs finished in 10.80 s
    [07:46:47]  cleancss finished in 10.80 s
    [07:46:47]  minify finished in 10.80 s
    [07:46:47]  build prod finished in 36.12 s
    Running command: /home/raj/ionic/github/hooks/after_prepare/010_add_platform_class.js /home/raj/ionic/github

    :CordovaLib:compileDebugJavaWithJavac FAILED


    FAILURE: Build failed with an exception.
    Error: /home/raj/ionic/github/platforms/android/gradlew: Command      failed with exit code 1 Error output:
    FAILURE: Build failed with an exception.

    * What went wrong:
    Execution failed for task ':CordovaLib:compileDebugJavaWithJavac'.
    > Could not create an instance of type com.sun.tools.javac.api.JavacTool.

我使用 genymotion 作为模拟器,尽管我认为这在这个问题上并不重要。这个问题的许多解决方案是设置JAVA_HOME 路径。但是我已经设置好了 echo $JAVA_HOME > /usr/lib/jvm/java-9-openjdk-amd64 。我怀疑这是来自 thisgradle 2.1java-9 的问题。我已经坚持了一段时间了,任何帮助将不胜感激。

【问题讨论】:

  • Android SDK 不支持 Java 9。降级到 8(尚未)

标签: cordova ionic-framework android-gradle-plugin android-build


【解决方案1】:

愚蠢的我认为在伟大的时候尝试JDK-9 是个好主意 Oracle 警告我不要这样做。将其删除并安装 JDK-8 ,问题解决。 Oracle 确实看到了我的未来。

【讨论】:

  • 这实际上不是一个解决方案,因为 JDK 9 现在是 Oracle Java 网站上的默认下载选项。
  • 那是因为它现在稳定了。我的问题是由于版本不稳定
  • 但是这个答案已经不能解决这个问题了。 :)
  • @incorelabs 我只能为自己说话,但我今天尝试使用 JDK 9 和最新的 cordova 来做到这一点,但没有成功。这个解决方案对我有用
  • @BradPitcher 我想暂时我们只需要降级到 JDK 8,这似乎不是最可行的,但目前唯一的解决方案是因为人们是 Apache Cordova 还没有准备好允许JDK9。 ://
【解决方案2】:
 cordova platform update android
 ionic build android
 ionic run android

尝试运行这些命令。希望这对你有帮助:)

【讨论】:

  • 它是最新的安卓版本。所以更新不是问题。
  • 是的。 `` > 无法创建 com.sun.tools.javac.api.JavacTool 类型的实例。``。这就是问题所在。我认为openjdk是问题所在。我正在重新安装它。
  • 继续吧。如果你解决了你的问题,请告诉我:)
  • 是的。这解决了它。愚蠢的我认为尝试 JDK-9 是个好主意
猜你喜欢
  • 2021-06-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-18
  • 2018-06-18
  • 2020-01-09
  • 1970-01-01
  • 2016-03-24
相关资源
最近更新 更多