如何在Java规则中设置Bazel --warn_duplicate_resources标志?

时间:2019-01-15 14:51:13

标签: jar bazel

我试图弄清楚如何在Bazel BUILD文件或.bazelrc文件中设置标志,以便在构建Java jar时可以打开--warn_duplicate_resources或--no_duplicates标志(实际上是Scala) ,但答案应该相同)。我要这样做,以便如果Bazel在打包jar时看到重复的文件(例如两个不同的logback.xml文件),则构建将失败,而不是选择一个文件并丢弃另一个文件。

在使用旧的jar构建新的jar时,我遇到了不同资源隐藏的问题。通过互联网翻遍后,我在几个地方的bazel代码库中找到了--warn_duplicate_resources标志以及一个--no_duplicates标志。这些似乎对确保避免避免多个jar文件定义同一资源文件的问题很有帮助。

https://github.com/bazelbuild/bazel/blob/master/src/java_tools/singlejar/java/com/google/devtools/build/singlejar/SingleJar.java

https://github.com/bazelbuild/bazel/blob/master/src/tools/singlejar/output_jar.cc

但是,我不知道要在BUILD或.bazelrc文件中放置什么标志来打开--warn_duplicate_resources或--no_duplicates标志。 java_library规则似乎没有任何直接连接,仅在.bazelrc中添加“ build --warn_duplicate_resources”会导致构建失败。

https://docs.bazel.build/versions/master/be/java.html#java_library

任何帮助将不胜感激,谢谢!

0 个答案:

没有答案