Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android-studio – 无法在null对象上调用方法systemProperty() – android studio和gradle大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
在构建我的应用程序时,我遇到一个奇怪的异常.

以下是主应用程序文件夹中的项目specificbuild.gradle文件(不在app文件夹中).

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.2.3'
        classpath 'org.robolectric:robolectric-gradle-plugin:1.0.1'
    }
}

apply plugin: 'java'

dependencies {
    TESTCompile 'junit:junit:4.12'
    TESTCompile "org.mockito:mockito-core:1.9.5"
}

allprojects {
    repositories {
        jcenter()
    }
}

但是,如果我将gradle依赖项更改为1.2.3版本,我可以解决这个问题,它工作正常.但是1.3.0它甚至没有启动构建并且无法在Null对象异常上调用方法systemproperty().

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

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

任何人都可以解释我的原因,为什么不采取1.3.0 gradle插件

解决方法

我遇到过同样的问题.看 this链接.

插件与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)

大佬总结

以上是大佬教程为你收集整理的android-studio – 无法在null对象上调用方法systemProperty() – android studio和gradle全部内容,希望文章能够帮你解决android-studio – 无法在null对象上调用方法systemProperty() – android studio和gradle所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。