[异常]java.lang.IllegalStateException: aidl is missing的解决办法

本文出自 “阿敏其人” 博客,转载或引用请注明出处。

原本pc上的as的项目放在svn上面,工作需要今天需要用mac把项目从svn上checkout下来。结果我所用到的viewPagerIndicator项目一直报错。

错误如下

Error:Execution failed for task ':viewPagerIndicator_lib:
compileDebugAidl'.
> java.lang.IllegalStateException: aidl is missing

google和度娘了一下,大概的说法是:BuildTools Version与Compile Sdk Version不兼容导致。(后来证明这个说法是对的。)

既然有眉目了,那就解决问题了。打开module设置

[异常]java.lang.IllegalStateException: aidl is missing的解决办法_第1张图片
Paste_Image.png

.
.
然后发现,我当前这个module确实 BuildTools Version与Compile Sdk Version 是一致的而且是最新的(如下图),那就应该没问题啊。

[异常]java.lang.IllegalStateException: aidl is missing的解决办法_第2张图片
Paste_Image.png

.

.

接下来我想,可能是最新的API 23存在不太匹配的问题,
一看,我有一个API23 的 SDK Platform 不是最新的,有一个update的提示,我更新更新了。处于全部更新的状态后如下所示。

[异常]java.lang.IllegalStateException: aidl is missing的解决办法_第3张图片
Paste_Image.png

然后再次运行,那个ViewPagerIndicator的module不报错了。(其他module的木module通通改成一致的BuildTools Version与Compile Sdk )

再次运行,程序成功跑起来了。

本文完。

(后话,既然最新的可能存在不兼容的问题,那么为什么不直接试试已经成熟的先前的版本呢?比如API21或者更低的?
是这样子的,项目之前在windows上的as构建的时候目标版本就是23,这时候如果我们在mac改为21,肯定values之类的文件就会报一大堆错,还有就是可能会产生一些莫名其妙的冲突,所以最好的方式,还是寻求最新的版本的能够兼容的方式)

你可能感兴趣的:([异常]java.lang.IllegalStateException: aidl is missing的解决办法)