Gradle错误升级到Android Studio 3.0 Beta 1

时间:2017-08-09 17:59:54

标签: android android-studio gradle android-gradle

注意:这似乎是Android插件的一个问题。请参阅相关问题的评论。

构建项目时出现以下gradle错误:

Gradle sync failed: Cause: java.lang.NullPointerException
            at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:98)
            at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
            at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
            at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
            at java.nio.file.Paths.get(Paths.java:84)
            at com.android.build.gradle.internal.scope.BuildOutput.getOutputPath(BuildOutput.java:222)
            at com.android.build.gradle.internal.scope.BuildOutputs.lambda$load$2(BuildOutputs.java:243)
            at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
            at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1376)
            at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
            at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
            at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:708)
            ...

我还要注意,我必须手动设置jdk位置,因为如果我使用捆绑的那个gradle守护程序将无法启动,抱怨不在预期的上下文中(它期待捆绑的上下文,而是获取外部上下文)。

此配置在canary 9中有效(使用捆绑的jdk)。

7 个答案:

答案 0 :(得分:52)

归功于@Grsmto

根据this blog post,您需要打开终端并按顺序启动以下命令:

  

更新

     

现在解决方法更容易,你只需要去 Build - >清理项目,然后同步。

<强>窗

gradlew clean

gradlew assemble

<强>的Linux / Mac的

./gradlew clean

./gradlew assemble

然后同步项目。

答案 1 :(得分:14)

来自https://androidstudio.googleblog.com/2017/08/android-studio-30-beta-1.html,这是一个众所周知的问题:如果你有一个现有的Android Studio项目正在使用Android版插件3.0.0的alpha版本(例如 3.0.0-alpha9 ),当您迁移到Android插件 3.0.0-beta1 并同步您的项目时,您可能会收到以下错误: Gradle项目刷新失败。您可以通过执行以下步骤来解决它:

选择构建&gt;从菜单栏中清理项目 - 您需要为每个项目仅执行一次此操作。然后,您可以通过单击工具栏中的同步项目来将项目文件与Gradle同步。

有关详细信息,请参阅发行说明。 https://androidstudio.googleblog.com/2017/08/android-studio-30-beta-1.html

快乐的编码!

答案 2 :(得分:7)

一个已知问题:As Documented here

只需这样做(无需输入命令)

  • 构建&gt;从菜单栏中清除项目

  • 然后通过点击工具栏中的同步项目,将项目文件与Gradle同步。

答案 3 :(得分:2)

Gradle sync failed: Cause: java.lang.NullPointerException
            at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:98)
            at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
            at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
            at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
            at java.nio.file.Paths.get(Paths.java:84)

阅读官方 Release Guideline

菜单栏中选择 Build > Clean 项目解决此问题 - 您只需为每个项目执行一次此操作。然后,您可以点击 Sync Project from the toolbar ,使用 Gradle sync your project个文件。

注意

<强> 3.0 Beta 1 or 3.0 Beta 2

  

包含大部分内容的程序或应用程序的早期版本   主要功能,但尚未完成。有时这些版本是   仅发布给特定人群或公众,   用于测试和反馈。

答案 4 :(得分:0)

此外,如果“clean”,“build”等都不起作用,则转到Build菜单并选择“Make Project”。它为我修正了错误。

虽然建议在此之前执行清理和构建。

答案 5 :(得分:0)

如果cleansync对您的Java + Kotlin混合项目不起作用,则可能需要更改Kotlin版本以与IDE提供的Kotlin版本保持一致,截至Android Studio 3.0 Beta 2为1.1.3-2。我当时正在使用1.1.4,我发现我已将其放回原位,在cleansync完成所有操作之前完成,此时我可以返回{ {1}}。

答案 6 :(得分:-1)

已知问题:如果您现有的Android Studio项目使用Android版插件3.0.0的alpha版本(例如3.0.0-alpha9),则迁移到Android时可能会出现以下错误插件3.0.0-beta1并同步你的项目:Gradle项目刷新失败。

选择Build&gt;解决此问题从菜单栏中清除项目 - 您需要为每个项目仅执行一次此操作。然后,您可以通过单击工具栏中的“同步项目”将项目文件与Gradle同步。

有关详细信息,请参阅发行说明。 https://androidstudio.googleblog.com/2017/08/android-studio-30-beta-1.html