Android模块编译过程中的错误no rules to make target

今天花了不少时间在纠正一个编译错误:

make: *** No rule to make target `out/target/common/obj/JAVA_LIBRARIES/sqlite-jdbc_intermediates/javalib.jar', needed by `out/target/common/obj/JAVA_LIBRARIES/core-tests_intermediates/classes-full-debug.jar'.  Stop.

我是修改了libcore下面的对应的java部分的代码后使用mm命令编译libcore部分。提示上述错误。

第一次全部clean后重新编译,问题解决。但是再次修改Java代码后又出现该问题。最后看了javalibraries.mk文件,看到了关于sqlit-jdbc相关的代码,发现这部分实际上是跟测试相关的,所以估计无需生成亦可。最后果然直接生成system.img后,使用,发现更改和编译均已生效。nice!

所以说,出错后需要溯源,或许有些问题压根就不是bug,只是一个不需要处理的友善提示。

原文地址:https://www.cnblogs.com/rainduck/p/3779056.html