Gradle错误升级到Android Studio 3.0 Beta 1

注意:这似乎是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守护进程将不会启动,抱怨没有处于预期的上下文环境中(而是获取绑定的上下文,而不是获取外部上下文)。

这个配置在金丝雀9上工作(与捆绑的jdk)。

感谢@Grsmto

按照这个博客post,你需要打开一个终端,并顺序启动下列命令:

UPDATE

现在,解决方法变得更简单了,只需要进入“ 生成” – >“清理项目” ,然后进行同步。

视窗

gradlew clean

gradlew assemble

Linux的/苹果机

./gradlew clean

./gradlew assemble

然后同步项目。

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

从菜单栏选择Build > Clean Project – 您只需要为每个项目执行一次该操作。 然后,您可以通过单击工具栏上的同步项目来将您的项目文件与Gradle 同步

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

快乐的编码!

它是一个已知的问题: 在这里记录

只要做到这一点(无需输入命令)

  • 生成>清理项目从菜单栏。

  • 然后通过单击工具栏上的同步项目,将您的项目文件与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) 

阅读正式的发行指南

解决这个问题,从菜单栏中选择Build > Clean Project – 您只需要为每个项目执行一次该操作。 然后,您可以通过单击Sync Project from the toolbar sync your project文件与Gradle Sync Project from the toolbar

注意

3.0 Beta 1 or 3.0 Beta 2

包含大部分主要function但尚未完成的程序或应用程序的早期版本。 有时这些版本只发布给一些特定的人群,或公众,以便进行测试和反馈。

此外,如果没有“清洁”,“建设”等没有工作,然后去生成菜单,并选择“生成项目”。 它修复了我的错误。

尽管在此之前进行清理和建设是明智的。

如果您的Java + Kotlin混合项目的cleansyncfunction不太适用,则可能需要将您的Kotlin版本更改为与IDE提供的Kotlin版本一致,从Android Studio 3.0 Beta 2开始,版本为1.1.3-2 。 当时我正在使用1.1.4 ,我发现我已经把它放下了,在我再次运行之前做了cleansync ,在这一点上,我可以回到1.1.4

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

解决这个问题,从菜单栏中选择Build> Clean Project – 您只需要为每个项目执行一次该操作。 然后,您可以通过单击工具栏上的同步项目来将您的项目文件与Gradle同步。

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