如何在 bazel 中为 java_library 创建源 jar

How to create sources jars for java_library in bazel

作为我们创建 bazel-maven 转换互操作工具(从更细粒度的 bazel jar 创建 maven 大小的 jar)的努力的一部分,需要创建源 jar。

对于 java_binary 目标,有一种机制可以使用 -src.jar 后缀

创建它

例如,对于名为 foo、运行 bazel build //:foo-src.jar

java_binary 目标

但是,对名为 barjava_library 目标使用相同的机制,我得到: ERROR: no such target '//:bar-src.jar': target 'bar-src.jar' not declared in package '' (did you mean 'libbar-src.jar'?) defined by /Users/.../java_project/BUILD.

java_library还有其他机制吗?

如错误所示,源目标称为 //:libbar-src.jar(带有 lib 前缀)。请参阅 outputs of java_library 的列表以供参考。