Android studio 无法对空对象(android studio和gradle)调用方法systemProperty()

Android studio 无法对空对象(android studio和gradle)调用方法systemProperty(),android-studio,gradle,android-gradle-plugin,android-build,Android Studio,Gradle,Android Gradle Plugin,Android Build,我在构建应用程序时遇到了一个奇怪的异常 以下是我的project specificbuild.gradle文件,位于主应用程序文件夹中(不在应用程序文件夹中) 但是,如果我将gradle依赖项更改为1.2.3版,则可以修复此问题。但对于1.3.0版,它甚至没有启动构建,并且在null对象异常时提供了无法调用方法systemProperty() classpath'com.android.tools.build:gradle:1.2.3' android studio日志文件中的详细信息显示:--

我在构建应用程序时遇到了一个奇怪的异常

以下是我的project specificbuild.gradle文件,位于主应用程序文件夹中(不在应用程序文件夹中)

但是,如果我将gradle依赖项更改为1.2.3版,则可以修复此问题。但对于1.3.0版,它甚至没有启动构建,并且在null对象异常时提供了无法调用方法systemProperty()

classpath'com.android.tools.build:gradle:1.2.3'

android studio日志文件中的详细信息显示:---

谁能解释一下原因,为什么不使用1.3.0 gradle插件???

我也有同样的问题。见链接

该插件与Gradle插件的v1.3.0不兼容,从Robolectric 3.0开始就被弃用,我怀疑您可能正在使用它。只需从配置中删除它(以及应用程序build.gradle文件中对它的任何引用),就可以了

另外,fwiw-您在查看Studio日志文件时使用了正确的线程。您只需要查看引用的堆栈帧之前的堆栈帧,以获得关于根本原因的更具体线索:

Caused by: java.lang.NullPointerException: Cannot invoke method systemProperty() on null object
    at org.robolectric.gradle.RobolectricPlugin$_apply_closure1_closure2.doCall(RobolectricPlugin.groovy:28)
    at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:67)
    at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:110)
    at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:115)
    at org.gradle.api.DomainObjectCollection$all$3.call(Unknown Source)
    at org.robolectric.gradle.RobolectricPlugin$_apply_closure1.doCall(RobolectricPlugin.groovy:19)
    at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:40)
    at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:25)
    at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:83)
    at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:31)
    at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
    at com.sun.proxy.$Proxy10.afterEvaluate(Unknown Source)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:79)

:-)听起来不错,但看起来有点奇怪,1.2.3是旧的插件,1.3.0是最新的,为什么它可以去润滑和旧的ok。另外,我想使用最新的gradle插件,你有什么建议!!!根据追踪者对该问题的评论,Robolectric插件(从Robolectric 3.0开始)与Android构建工具Gradle插件的较新版本不兼容。只需更新到'com.android.tools.build:gradle:1.3.0'(尽管我相信现在有1.3.1),并删除对Robolectric插件的所有引用-不再需要它。(如果回答有帮助,别忘了投赞成票。)是的,听起来很完美。非常感谢。接受并投票表决。
2015-09-09 15:28:18,211 [120924807]   WARN - nal.AbstractExternalSystemTask - Cannot invoke method systemProperty() on null object 
com.intellij.openapi.externalSystem.model.ExternalSystemException: Cannot invoke method systemProperty() on null object
    at org.jetbrains.plugins.gradle.service.project.AbstractProjectImportErrorHandler.createUserFriendlyError(AbstractProjectImportErrorHandler.java:106)
    at org.jetbrains.plugins.gradle.service.project.BaseProjectImportErrorHandler.getUserFriendlyError(BaseProjectImportErrorHandler.java:158)
    at org.jetbrains.plugins.gradle.service.project.BaseGradleProjectResolverExtension.getUserFriendlyError(BaseGradleProjectResolverExtension.java:438)
    at com.android.tools.idea.gradle.project.AndroidGradleProjectResolver.getUserFriendlyError(AndroidGradleProjectResolver.java:348)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver
Caused by: java.lang.NullPointerException: Cannot invoke method systemProperty() on null object
    at org.robolectric.gradle.RobolectricPlugin$_apply_closure1_closure2.doCall(RobolectricPlugin.groovy:28)
    at org.gradle.api.internal.ClosureBackedAction.execute(ClosureBackedAction.java:67)
    at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:110)
    at org.gradle.api.internal.DefaultDomainObjectCollection.all(DefaultDomainObjectCollection.java:115)
    at org.gradle.api.DomainObjectCollection$all$3.call(Unknown Source)
    at org.robolectric.gradle.RobolectricPlugin$_apply_closure1.doCall(RobolectricPlugin.groovy:19)
    at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:40)
    at org.gradle.listener.ClosureBackedMethodInvocationDispatch.dispatch(ClosureBackedMethodInvocationDispatch.java:25)
    at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:83)
    at org.gradle.listener.BroadcastDispatch.dispatch(BroadcastDispatch.java:31)
    at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93)
    at com.sun.proxy.$Proxy10.afterEvaluate(Unknown Source)
    at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:79)