Gradle protobuf自定义任务

时间:2015-11-10 21:29:41

标签: gradle protocol-buffers

鉴于这种protobuf gradle配置:

protobuf configuration

当我们执行generateProto任务(由protobuf插件生成)时,我们将获得以下输出:

output

正如您所见,自定义任务cleanProto将在generateProto之前执行。

如果我没有在这些任务之间定义依赖关系,为什么它会执行呢?

1 个答案:

答案 0 :(得分:3)

实际上......根本没有执行。 return p2p.getT().equals(p2p.getT()) && p1p.getS().equals(p2p.getS()); 语句在配置阶段执行,而不是在执行阶段执行。要进行验证,请将println更改为:

cleanProto

现在,如果没有定义依赖项,它将根本不执行。使用task cleanProto << { println 'deleting gen' delete 'gen' } 添加操作。操作在执行阶段运行。

请同时查看this回答。

P.S。下次而不是提供代码的图像,复制并粘贴它。您可以在Mac上使用 cmd + k 组合。