注意:这似乎是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)。
答案 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)
答案 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)
如果clean
和sync
对您的Java + Kotlin混合项目不起作用,则可能需要更改Kotlin版本以与IDE提供的Kotlin版本保持一致,截至Android Studio 3.0 Beta 2为1.1.3-2
。我当时正在使用1.1.4
,我发现我已将其放回原位,在clean
和sync
完成所有操作之前完成,此时我可以返回{ {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