Gradle 输出缺少生成的 META-INF 文件

Gradle Output missing generated META-INF file

我有一个使用 Log4j2 的项目。当我从命令行使用 Javac 构建它时,我的构建输出在 META-INF 目录下包含一个 Log4j2Properties.dat 文件。

请注意,此 Log4j2Properties.dat 文件 不在 源目录中,它是在构建时由 javac 中的一些魔法生成的。

但是,在 Gradle 中使用 JavaCompile 任务时,我的构建输出仅包含 class 个文件。

如何说服它也生成并包含 Log4j2Properties.dat 文件?

好的,所以我终于解决了这个问题。在这里为未来的人(包括我自己;)发帖):

问题是 Gradle 在 运行 注释处理器中比 Javac 更严格,这是生成我丢失的文件所必需的。在这种情况下,我只需将 Log4j 注释处理器添加到我的依赖项 -> annotationProcessor 列表中。