[英]'aidl is missing' when trying to migrate a project created with eclipse to Android Studio
大约2年前,我在Eclipse中创建了一个Android App项目。 它运行良好,甚至已经将其部署在我的手机上。
现在,我想继续进行研究,建议使用Android Studio。
我下载了它,并从Android Studio创建了一个新的空项目。 然后添加我的文件并尝试构建该项目。
我还不熟悉诸如Graple之类的所有新事物,我只是在网上稍加了解一下。
构建时,出现以下错误,我们将不胜感激。
gradlew compileDebugJava --stacktrace
:app:preBuild截止日期
:app:preDebugBuild UP-TO-DATE
:应用:checkDebugManifest
:app:preReleaseBuild建立到最新
:app:prepareComAndroidSupportAppcompatV72220Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42220Library UP-TO-DATE
:应用:prepareDebugDependencies
:app:compileDebugAidl失败
失败:构建失败,发生异常。
出了什么问题:任务':app:compileDebugAidl'的执行失败。
艾德尔不见了
尝试:
使用--info或--debug选项运行以获取更多日志输出。
异常是:org.gradle.api.tasks.TaskExecutionException:任务':app:compileDebugAidl'的执行失败。 在org.org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:6 9)在org.org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)在org。在org.grad.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter .java:35)在org.org.grad.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64)在api。 org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.j ava:42)上的internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58)在org.gradle.api.internal.tasks org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)的.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52) org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:305)处的xecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43),org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.executeTask(AbstractTaskPlanExecutor.exe) )在org.gradle.execution上的org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51)上的org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.jav a:63) org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)的org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:88)的.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23)在org.gradle.e上的org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)在org.gradle.execution.DefaultBuildExecuter.access $ 200(DefaultBuildExecuter.java:23)在org.gradle.e 在org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)在org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)在org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)在org.xecution.DefaultBuildExecuter $ 2.proceed(DefaultBuildExecuter.java:68)在org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:149)处的gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:55)在org.org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106) org.gradle.launcher.exec.InProcessBuildActionExecuter $ DefaultBuildController.run(InProcessBuildActionExecuter.java:80)上的.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)在org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction .java:33)位于org.gradle.launcher.cli.ExecuteBuildAction.run(ExecuteBuildAction.java:24)位于org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:36)位于org.gradle org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)位于org.gradle.internal.Actions $ RunnableActionAdapter.execute(Actions.java)处的.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)的171。在org.gradle.launcher.cli.CommandLineActionFactory $ WithLogging.execute(CommandLineActionFactory。 org.gradle.launcher.cli.CommandLineActionFactory $ WithLogging.execute(CommandLineActionFactory.java:169)处org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:33)处org.gradle.launcher 。 cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)位于org.gradle.launcher.Main.doAction(Main.java:33)位于org.gradle.launcher.bootstrap.EntryPoint.run(EntryPoint.java:45) org.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)上的.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)在org.gradle.launcher.GradleMain.main(GradleMain.java) :23),位于org.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:33),位于org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:130),位于org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain。 java:48)原因:java.lang.IllegalStateException:com.android.builder.core.AndroidBuilder $ compileAllAidlFiles $ 0.call上的com.android.builder.core.AndroidBuilder.compileAllAidlFiles(AndroidBuilder.java:960)缺少aidl (未知来源)com.android.build.gradle.tasks.AidlCompile.compileAllFiles(AidlCompile.groovy:118)在com.android.build.gradle.tasks.AidlComp com.android.build.gradle.tasks.AidlCompile $ ile.this $ 6 $ compileAllFiles(AidlCompile.groovy)com.android.build.gradle.tasks.AidlCompile.doFullTaskAction(AidlCompile)的$ 6 $ compileAllFiles.callCurrent(Unknown Source) com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.groovy:64)处的com.android.build.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:63)处的.groovy:168)。 gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory $ IncrementalTaskAction.doExecute(Annotat ionProcessingTaskFactory.java:235)位于org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory $ StandardTaskAction.execute(AnnotationPr ocessingTaskFactory.java:211)处。 .. 47更多
建立失败
就我而言,我使用Android Studio 1.2.1.1下载了Android M和Android 5.1.1的版本22,但是当我尝试做Hello World时,同样的错误向我显示
因此解决方案是在应用程序中右击,如下图所示,然后选择“打开模块设置”
那么您就有2个选择。 我使用的最新版本都更改了。
将SDK版本编译为API 21 Lollipop
最后清理项目并构建
更新这是我的build.gradle与您的build.gradle进行比较。
应用插件:“ com.android.application”
android {
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
applicationId "com.android.bmi"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'
}
更新
要获取Android Studio 1.3,请按照以下步骤操作
通过选择“文件”>“设置”打开“设置”窗口。
选择“外观和行为>系统设置>更新”面板。
在“更新”面板上,选择选项“自动检查以下项目的更新:金丝雀香奈儿”。
在“更新”面板上,选择“立即检查”以检查最新的Canary版本。
出现提示时,下载并安装内部版本。
然后,您将获得类似的内容,将Androud Studio更新到1.3,并可以测试Android M
只需更改构建工具的版本 ,此问题就意味着gradle无法使用特定的构建工具来构建项目。
如果剂量工作降级到稳定版本,我更喜欢将更新生成工具更新为最新的稳定版本。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.