问题标签 [bazel-java]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
19 浏览

bazel - 如何在 Bazel 中启用 doclint

在我看来,默认情况下没有启用doclint。

例如,此代码应该失败。

如何在 Bazel 中打开 doclint?

0 投票
1 回答
249 浏览

bazel - 如何从bazel中的jar中提取资源

我的项目中有不同的模块,它们将配置文件生成为 JSON,它们是 java_libarary 的一部分。我需要使用 bazel 构建将此生成的 JSON 文件复制到新模块。我正在考虑算法来做到这一点:

  1. 从 bazel 读取所有依赖项(假设所有生成 json 的模块都将添加为依赖项)。
  2. 逐个解压JAR文件
  3. 将 json 复制到新位置
  4. 包将 json 复制到新的 tar 作为输出

我不确定,我怎么能在 bazel 中做到这一点,如果有人有类似的例子,请告诉我。

提前致谢...

0 投票
0 回答
138 浏览

java - Bazel项目环境中如何在本地获取maven依赖的jar文件

我正在使用 Intellij 中的 Bazel 项目来获取 Maven 依赖项。我按照以下链接在 Bazel 中使用 maven 依赖项:

https://github.com/bazelbuild/rules_jvm_external/releases/tag/4.0

我在我的 Bazel 项目中使用来自 maven 的 Junit 依赖项,但 Junit 依赖类未加载到外部库列表中,因此我遇到了问题,并且无法使用 Junit 的依赖类编写代码。请看下面的项目截图:

在此处输入图像描述

但是当我使用以下命令构建项目时,一切正常且完美:

看下面的截图:

在此处输入图像描述

那么任何人都可以建议我在使用 Bazel 时如何在外部库列表中获取 JUnit 依赖项,类似于我们使用 Maven 时,我们在 Maven 项目中本地获取 Maven 依赖项列表中的所有依赖项?

0 投票
1 回答
328 浏览

sh - 独立 Shell 脚本工作正常,但使用时 sh_binary 的 srcs 无法正常工作

我的项目结构如下 - PROJECT_STRUCTURE

现在 my_shbin.sh 如下 -

该脚本在单独调用时完全正常并提供所需的结果。但是当我在我的 BUILD 文件中添加以下 sh_binary 时,我在 temp-scan-files.txt 文件中看不到任何内容,因此在 its-scan-report.txt 文件中什么也看不到

我使用播放图标从 intellij 运行 sh_binary,并尝试使用 bazel run :findFiles 从终端运行它。没有显示错误,但我看不到 temp-scan-files.txt 中的数据。关于这个问题的任何帮助。bazel 的文档非常有限,除了用例之外几乎没有任何信息。

0 投票
0 回答
142 浏览

junit - 如何使用 bazel 向 junit xml 报告添加自定义属性?

bazel用于运行测试。我想将自定义属性添加到<testcase>junit xml 报告的节点。

举个例子,默认情况下bazel会这样:

我发现它bazel负责生成 junit xml 报告,并在内部使用AntXmlResultWriter创建 xml 报告的类。

所以我的问题是是否可以添加我的属性,如果可以,最简单和最直接的方法是什么,所以我会得到:

注意myattr="自定义属性"

0 投票
1 回答
243 浏览

bazel - maven install 和 bazel 中的 pinned maven install 有什么区别?

我试图了解 bazel jvm external 的一些内部结构。bazel文档不够清晰,我无法理解。

以下步骤有什么区别。

此步骤在内部调用 coursier.bzl 以获取对 @bazel_tools//tools/build_defs/repo:http.bzl 的依赖项

此步骤似乎在调用 @bazel_tools//tools/build_defs/repo:http.bzl 而无需通过 coursier.bzl

问题 第 1 步和第 2 步之间有什么区别,两者似乎都是通过 HTTP 获取工件?例如:步骤 1 是否仅获取未固定版本,步骤 2 仅获取固定版本?

0 投票
1 回答
55 浏览

java - 是否可以使用 bazel 查询来输出隐式(或任何)规则的完整语法?

我的目标是编写一个新的显式规则,它等效于内部规则,但稍作修改(嵌入某些依赖项,但不嵌入其他依赖项)。

假设我有如下规则:

有一个隐含的规则,如下所示:

是否有一些query我可以运行来强制 bazeljava_binary为这个隐式规则输出与上述规则等效的内容?


看起来 using--output=build只是让我得到了原始规则,而我想要一个明确告诉 bazel 嵌入依赖项的规则。

0 投票
0 回答
38 浏览

bazel - 在 bazel 项目中添加 maven 依赖项时,无法运行 bazel run @maven//:pin,将 maven_install.json 设置为空。面临以下问题

bazel run @maven//:pin 启动本地 Bazel 服务器并连接到它... 信息:已分析目标 @maven//:pin(已加载 7 个包,已配置 26 个目标)。信息:找到 1 个目标...目标 @maven//:pin 最新:bazel-bin/external/maven/pin bazel-bin/external/maven/pin.exe 信息:经过时间:14.964 秒,严重路径:0.13 秒信息:1 个进程:1 个内部。信息:构建成功完成,总共 1 个操作 信息:构建成功完成,总共 1 个操作 启动本地 Bazel 服务器并连接到它... C:\Users\mohit.jaiswal_bazel_mohit.jaiswal\3crxb23l\execroot_ main _\bazel-out\ x64_windows-fastbuild\bin\external\maven\pin:第 13 行:../maven/jq:没有这样的文件或目录


并且 maven_install.json 文件显示为空

0 投票
1 回答
47 浏览

bazel - java_toolchain:如何在 Bazel 构建中使用 Eclipse 编译器

我想将ant构建迁移到 Bazel 4.2.1。ant 构建使用 Eclipse 编译器 (ecj-3.27.0)。

在 Bazel 中声明 Java 编译器的方式是java_toolchain.

所以我看了一下输出bazel query @bazel_tools//tools/jdk:all并尝试使用 vanilla 工具链作为灵感(bazelisk query --output=build @bazel_tools//tools/jdk:toolchain_vanilla)。

但是,它仍然不起作用。ecj.jar编译输出未知选项--output

bazel aquery MYTARGET显示整个编译器命令行(以及更多构建步骤):

我不知道任何接受--output. 我必须以ecj.jar不同的方式通过吗?

0 投票
1 回答
39 浏览

bazel - Jenkins(Linux,CentOS)上的 Bazel 本地 JDK 权限问题

我在 Jenkins 和 Bazel 上看到了一个奇怪的权限问题。该构建使用我正在准备的基于 CentOS 的 docker 映像。

.bazelrc包含:

我想了解的是缺乏权限。该/home/jenkins文件夹是 Jenkins 用户的用户主目录。它在那里具有完整的读/写权限。

JAVA_HOME设置为 Azul OpenJDK 构建。已确认有效。

有什么想法我应该检查吗?