首页 文章

'aidl is missing'尝试将使用eclipse创建的项目迁移到Android Studio时

提问于
浏览
1

我大约两年前在eclipse中创建了一个Android App项目 . 它工作得很好,我甚至将它部署在我的手机上 .

现在我想继续努力,我建议使用Android Studio .

我下载了它并从Android Studio创建了一个新的空项目 . 然后添加了我的文件并尝试构建项目 .

我还不熟悉像Graple这样的新东西,我只是在网上红点了解它 .

当我构建时,我得到以下错误,任何帮助将不胜感激 .

gradlew compileDebugJava --stacktrace

:app:preBuild UP-TO-DATE
:app:preDebugBuild UP-TO-DATE
:应用:checkDebugManifest
:app:preReleaseBuild UP-TO-DATE
:app:prepareComAndroidSupportAppcompatV72220Library UP-TO-DATE
:app:prepareComAndroidSupportSupportV42220Library UP-TO-DATE
:应用:prepareDebugDependencies
:app:compileDebugAidl FAILED

FAILURE:构建因异常而失败 .

  • 出了什么问题:任务执行失败':app:compileDebugAidl' .

aidl失踪了

  • 尝试:
    使用--info或--debug选项运行以获取更多日志输出 .

  • 异常是:org.gradle.api.tasks.TaskExecutionException:任务':app:compileDebugAidl'的执行失败 . 在org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:6 9)org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:46)at org . gradle.api.internal.tasks.execution.PostExecutionAnalysisTaskExecuter.execute(PostExecutionAnalysisTaskExecuter .java:35)位于org.gradle.api的org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:64) . 在org.gradle.api.internal.tasks的org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.j ava:42)中的internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:58) .execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskE org.gradle.api.internal.AbstractTask.executeWithoutThrowingTaskFailure(AbstractTask.java:305)中的xecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.executeTask(AbstractTaskPlanExecutor.jav a:79) )org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.jav a:63)org.gradle.execution.taskgraph.AbstractTaskPlanExecutor $ TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:51)at org.gradle.execution .taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:23)atg.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:88)at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:29)at at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)org.gradle.execution.DefaultBuildExecuter.access $ 200(DefaultBuildExecuter.java:23)org.gradle.e xecution.DefaultBuildExecuter $ 2.proceed(DefaultBuildExecuter.java:68)org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)at org . grag.exe.exe.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:55)org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:149)org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:106)at org .gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)org.gradle.launcher.exec.InProcessBuildActionExecuter $ DefaultBuildController.run(InProcessBuildActionExecuter.java:80)at 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)atg.gradle .launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:26)at org.gradle.launcher.cli.RunBuildAction.run(RunBuildAction.java:51)at atorg.gradle.internal.Actions $ RunnableActionAdapter.execute(Actions.java:171)org.gradle.launcher.cli.CommandLineActionFactory $ ParseAndBuildAction.execute(CommandLineActionFactory.java:237)at org.gradle.launcher.cli.CommandLineActionFactory $ org.gradle.launcher.cli.JavaRuntimeValidationAction.exe执行(JavaRuntimeValidationAction.java:35)中的org.gradle.launcher.cli.JavaRuntimeValidationAction.execute(JavaRuntimeValidationAction.java:24)中的ParseAndBuildAction.execute(CommandLineActionFactory.java:210) .gradle.launcher.cli.CommandLineActionFactory $ WithLogging.execute(CommandLineActionFactory.java:206)org.gradle.launcher.cli.CommandLineActionFactory $ WithLogging.execute(CommandLineActionFactory.java:169)org.gradle.launcher.cli.ExceptionReportingAction在org.gradle的org.gradle.launcher.Main.doAction(Main.java:33)的org.gradle.launcher.cli.ExceptionReportingAction.execute(ExceptionReportingAction.java:22)中执行.execute(ExceptionReportingAction.java:33) . launcher.bootstrap.EntryPoi nt.run(EntryPoint.java:45)org.gradle.launcher.bootstrap.ProcessBootstrap.runNoExit(ProcessBootstrap.java:54)atg.gradle.launcher.bootstrap.ProcessBootstrap.run(ProcessBootstrap.java:35)at org .gradle.launcher.GradleMain.main(GradleMain.java:23)atg.gradle.wrapper.BootstrapMainStarter.start(BootstrapMainStarter.java:33)at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:130)at at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:48)引起:java.lang.IllegalStateException:com的com.android.builder.core.AndroidBuilder.compileAllAidlFiles(AndroidBuilder.java:960)中缺少aidl . android.builder.core.AndroidBuilder $ compileAllAidlFiles $ 0.call(Unknown Source)at com.android.build.gradle.tasks.AidlCompile.compileAllFiles(AidlCompile.groovy:118)at com.android.build.gradle.tasks.AidlCompile . 这个$ 6 $ compileAllFiles(AidlCompile.groovy)在com.android.build.tasks.AidlCompile $ this $ 6 $ compileAllFiles.callCurrent(Unknown Source)at com.android.buil d.gradle.tasks.AidlCompile.doFullTaskAction(AidlCompile.groovy:168)位于org.gradle.internal.reflect.JavaMethod的com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.groovy:64) . 在org.gradle.api.apternal.project.doExecute(Annotat ionProcessingTaskFactory.java:235)的org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory $ StandardTaskAction中调用org.gradle.api.internal.project.taskfactory.AnnotationProcessingTaskFactory $($ JavaMethod.java:63) .execute(AnnotationPr ocessingTaskFactory.java:211)... 47更多

建筑失败

2 回答

  • 1

    在我的情况下,我使用Android Studio 1.2.1.1下载了Android M和Android 5.1.1的第22版,但是当我尝试执行Hello World时,同样的错误显示我

    因此,解决方案是在应用程序中右键单击,如下图所示,然后选择“打开模块设置”

    enter image description here

    那你有2个选择 . 我用最后一个版本改变了两个版本 .

    将SDK版本编译为API 21 Lollipop

    enter image description here

    最后清理项目并构建

    更新这是我的build.gradle与build.gradle进行比较 .

    apply plugin:'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 Chanel”选项 .

    • 在“更新”面板上,选择“立即检查”以检查最新的canary构建 .

    • 在出现提示时下载并安装构建 .

    然后你会有这样的东西将你的Androud Studio更新到1.3,你可以用它来测试Android M.

    enter image description here

  • 1

    只是更改你的 build tools version ,这个问题意味着gradle无法用你的特定构建工具构建你的项目 .

    我更喜欢更新构建工具到最新的稳定版本,如果剂量工作降级到稳定版本

相关问题