执行任务:[clean]按需配置是一项孵化功能 . NDK缺少“平台”目录 . 如果您使用的是NDK,请验证ndk.dir是否设置为有效的NDK目录 . 它目前设置为/ Users / ishandutta2007 / Library / Android / sdk / ndk-bundle . 如果未使用NDK,请从ANDROID_NDK_HOME或local.properties取消设置NDK变量以删除此警告 . 项目':app'中的配置'compile'已弃用 . 请改用“实施” . FAILURE:构建因异常而失败 . 出了什么问题:配置项目':app'时出现问题 . java.lang.NullPointerException(无错误消息)尝试:使用--info或--debug选项运行以获取更多日志输出 . 例外情况是:org.gradle.api.ProjectConfigurationException:配置项目':app'时出现问题 . 在org.gradle.configuration.project.LifecycleProjectEvaluator.addConfigurationFailure(LifecycleProjectEvaluator.java:87)在org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:82)在org.gradle.configuration.project.LifecycleProjectEvaluator.doConfigure (LifecycleProjectEvaluator.java:69)org.gradle.configuration.project.LifecycleProjectEvaluator.access $ 100(LifecycleProjectEvaluator.java:33)org.gradle.configuration.project.LifecycleProjectEvaluator $ ConfigureProject.run(LifecycleProjectEvaluator.java:103)at org .gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)atg.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)org.gradle.internal.progress.DefaultBuildOperationExecutor .execute(DefaultBuildOperationExecutor.java:197)org.gradle.internal.progress.Defaul tBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)位于org.gradle.api.apject.project.Project.DefaultProject.evaluate的org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:49)(DefaultProject.java:651) org.gradle.api.ini.project.DefaultProject.evaluate(DefaultProject.java:133)org.gradle.execution.TaskPathProjectEvaluator.configure(TaskPathProjectEvaluator.java:35)org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator) .java:62)org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:100)org.gradle.execution.TaskSelector.getSelection(TaskSelector.java:81)at org.gradle.execution.commandline.CommandLineTaskParser . parseTasks(CommandLineTaskParser.java:42)org.gradle.execution.TaskNameResolvingBuildConfigurationAction.configure(TaskNameResolvingBuildConfigurationAction.java:44)org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfi) gigateActionExecuter.java:48)org.gradle.execution.DefaultBuildConfigurationActionExecuter.access $ 000(DefaultBuildConfigurationActionExecuter.java:25)org.gradle.execution.DefaultBuildConfigurationActionExecuter $ 1.proceed(DefaultBuildConfigurationActionExecuter.java:54)at org.gradle.execution.DefaultTasksBuildExecutionAction org.gradle.execution的org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionExecuter.java:48)org.gradle.execution上的.configure(DefaultTasksBuildExecutionAction.java:44)org.gradle.execution.DefaultBuildConfigurationActionExecuter.access $ 000(DefaultBuildConfigurationActionExecuter.java:25) .defaultBuildConfigurationActionExecuter $ 1.proceed(DefaultBuildConfigurationActionExecuter.java:54)org.gradle.execution.ExcludedTaskFilteringBuildConfigurationAction.configure(ExcludedTaskFilteringBuildConfigurationAction.java:47)org.gradle.execution.DefaultBuildConfigurationActionExecuter.configure(DefaultBuildConfigurationActionEx) ecuter.java:48)org.gradle.execution.DefaultBuildConfigurationActionExecuter.select(DefaultBuildConfigurationActionExecuter.java:36)org.gradle.initialization.DefaultGradleLauncher $ CalculateTaskGraph.run(DefaultGradleLauncher.java:265)at org.gradle.internal.progress .defaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java) :197)在org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:107)在org.gradle.initialization.DefaultGradleLauncher.constructTaskGraph(DefaultGradleLauncher.java:173)在org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java :128)处于org.gradle.internal.invocation.GradleBuildController org.gradle.internal.invocation.GradleBuildController $ 1.call(GradleBuildController.java:78)org.gradle.initialization.DefaultGradleLauncher.executeTasks(DefaultGradleLauncher.java:107) $ 1.call(GradleBuildController.java:75)在org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:152)在org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:100)在组织.gradle.internal.invocation.GradleBuildController.run(GradleBuildController.java:75)在org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:53)在org.gradle.laun cher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)位于org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner . java:32)org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner $ 1.run(RunAsBuildOperationBuildActionRunner.java:43)org.gradle.internal.progress.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)org.gradle . org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor . java:107)org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:4 0)org.gradle.launcher.exec上的org.gradle.tooling.internal.provider.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:51)org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:45)at org.gradle.launcher.exec .inProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:29)org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:39)org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:25)at at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:71)在org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:45)在org.gradle.tooling.internal . org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupB)中的provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:51) uildActionExecuter.java:32)org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:36)org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:25)at org .gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)at org.gradle.tooling.internal.provider .StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:64)org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:29)at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java) :55)在org.gradle.tooling.internal.provider.SessionFa在org.gradle.tooling.internal.provider.SetupLogingActionExecuter.exe执行(SetupLogingActionExecuter.java:42)org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:)中的ilureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:42): 33)在org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)在org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)在org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)位于org.gradle的org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37) . landher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)位于org.gradle.launcher.daemon的org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26) . 服务器.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)位于org.gradle.launcher.daemon.server.api的org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34) . daemonCommandExecution.proceed(DaemonCommandExecution.java:120)位于org.gradle.launcher.daemon.serverec.ForwardClientInput $ 2的org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call(ForwardClientInput.java:74) . 在org.gradle.l的org.gradle.util.Swapper.swap(Swapper.java:38)调用(ForwardClientInput.java:72)位于org.gradle.launcher.daemon的org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)的auncher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72) . server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)位于org.gradle.launcher.daemon.server.exec的org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) . 在org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed的org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)中的LogToClient.doBuild(LogToClient.java:62)( DaemonCommandExecution.java:120)org.gradle.launcher.daemon.server.exe .EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:82)org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java: 36)在org.gradle.launcher的org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) . dagmon.server.exe .StartBuildOrRespondWithBusy $ 1.run(StartBuildOrRespondWithBusy.java:50)org.gradle.launcher.daemon.server.DaemonStateCoordinator $ 1.run(DaemonStateCoordinator.java:297)org.gradle.internal.concurrent.ExecutorPolicy $位于org.gradle.internal.concurrent.ThreadFactoryImpl的org.gradle.internal.concurrent.ManagedExecutorImpl $ 1.run(ManagedExecutorImpl.java:46)中的CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)$ ManagedThreadRunnable.run(ThreadFactoryImpl.java:55 )由com.android.build.gradle.internal.ndk.NdkHandler.getPlatformVersion(NdkHandler.java:158)中的com.google.common.base.Preconditions.checkNotNull(Preconditions.java:782)引起的java.lang.NullPointerException: )com的com.android.build.internal.ndk.NdkHandler.supports64Bits(NdkHandler.java:331)com的com.android.build.gradle.internal.ndk.NdkHandler.getSupportedAbis(NdkHandler.java:397) . com.android上的android.build.gradle.tasks.ExternalNativeJsonGenerator.create(ExternalNativeJsonGenerator.java:609) . build.gradle.internal.TaskManager.createExternalNativeBuildJsonGenerators(TaskManager.java:1532)at com.android.build.internal.ApplicationTaskManager.lambda $ createTasksForVariantScope $ 10(ApplicationTaskManager.java:205)at com.android.builder.profile.ThreadRecorder .record(ThreadRecorder.java:81)位于com.android.build.internal.ApplicationTaskManager.createTasksForVariantScope(ApplicationTaskManager.java:200)的com.android.build.gradle.internal.VariantManager.createTasksForVariantData(VariantManager.java:523) )com.android.build的com.android.build.gradle.internal.VariantManager.lambda $ createAndroidTasks $ 1(VariantManager.java:338)com.android.build的com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:81) .gradle.internal.VariantManager.createAndroidTasks(VariantManager.java:334)at com.android.build.BasePlugin.lambda $ createAndroidTasks $ 5(BasePlugin.java:627)at com.android.builder.profile.ThreadRecorder.record( ThreadRecorder.java:81)在com.android.build.gradle.Ba sePlugin.createAndroidTasks(BasePlugin.java:622)at com.android.build.gradle.BasePlugin.lambda $ null $ 3(BasePlugin.java:549)at com.android.builder.profile.ThreadRecorder.record(ThreadRecorder.java:81来自org.gradle.internal的org.gradle.internal.event.BroadcastDispatch $ ActionInvocationHandler.dispatch(BroadcastDispatch.java:91)的com.android.build.gradle.BasePlugin.lambda $ createTasks $ 4(BasePlugin.java:545) .event.BroadcastDispatch $ ActionInvocationHandler.dispatch(BroadcastDispatch.java:80)atorg.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:42)org.gradle.internal.event.BroadcastDispatch $ SingletonDispatch.dispatch(BroadcastDispatch.java:230)at org.gradle.internal.event.BroadcastDispatch $在org.gradle.internal.event.BroadcastDispatch $ CompositeDispatch.dispatch(BroadcastDispatch.java:324)的org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:58)中的SingletonDispatch.dispatch(BroadcastDispatch.java:149) org.gradle.internal.event.BroadcastDispatch $ CompositeDispatch.dispatch(BroadcastDispatch.java:234)位于org.gradle.internal.event.ListenerBroadcast的org.gradle.internal.event.ListenerBroadcast.dispatch(ListenerBroadcast.java:140) .dispatch(ListenerBroadcast.java:37)位于org.gradle的com.sun.proxy上的org.gradle.internal.dispatch.ProxyDispatchAdapter $ DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93) . $ Proxy23.afterEvaluate(未知来源) . configuration.project.LifecycleProjectEva luator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:75)... 95更多在https://help.gradle.org获取更多帮助在3s内 Build 失败
的build.gradle(项目)
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0-beta2'
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
的build.gradle(APP):
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion '26.0.1'
defaultConfig {
applicationId 'org.tensorflow.demo'
minSdkVersion 21
targetSdkVersion 26
versionCode 1
versionName '1.0'
externalNativeBuild {
cmake {
cppFlags ""
}
}
ndk {
abiFilters 'x86', 'x86_64', 'armeabi-v7a', 'arm64-v8a'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
dependencies {
compile 'org.tensorflow:tensorflow-android:1.3.0'
}
Android Studio:2.3.3
1 回答
按需配置是一项孵化功能 . NDK缺少“平台”目录 .
如果您使用的是NDK,请确认
ndk.dir
已设置为有效的NDK目录 .它目前设置为
C:\Users\MSI\AppData\Local\Android\Sdk\ndk-bundle
.如果您未使用NDK,请从
ANDROID_NDK_HOME
或local.properties
取消设置NDK
变量以删除此警告 .