转载请注明出处:http://blog.csdn.net/lastsweetop/article/details/79025517
任何构建工具最重要的一个功能就是防止做重复工作。例如对于编译进程来说,如果已经执行了一次编译,那么就不需要再进行第二次,除非发生了一些会影响输出的操作,比如源代码改了或者输出被删掉了,编译会消耗很多时间,如果没必要去的情况下跳过这步就会节省很多时间。
Gradle是通过增量构建的特性来支持这个功能的,我们来详细了解一下
任务的输入输出
在通常情况下,任务接收一些输入然后产生一些输出。如果用编译的例子来讲,比如java的编译,它会接收一些源文件作为输入,然后产出class文件作为输出,还有一些输入,比如可以指定是否包含日志文件。
就像上图看到的一样,输入最重要的特征就是可以影响一个或者多个输出。依赖于源代码和源码所跑在的java运行时的版本都会影响字节码的生成,这些都