首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在没有"bazel run“的情况下,以生产就绪的方式执行bazel构建农场。

在没有"bazel run“的情况下,以生产就绪的方式执行bazel构建农场。
EN

Stack Overflow用户
提问于 2019-11-12 17:01:05
回答 1查看 421关注 0票数 1

Bazel建筑农场的自述说:

代码语言:javascript
运行
复制
In general do not execute server binaries with bazel run, since bazel does not support running multiple targets.

这听起来像是bazel run是为本地测试而设计的,而不是用于多个作业可以运行的生产性服务器。但我找不到说明如何运行bazel服务器的文档。旧的Dockerfiles运行build,然后使用java执行生成的jar文件。我在我的测试机器上尝试了这一点,得到了以下错误:

代码语言:javascript
运行
复制
[vagrant@localhost bazel-buildfarm]$ java -Djava.util.logging.config.file=/config/logging.properties -jar bazel-bin/src/main/java/build/buildfarm/buildfarm-server.jar
no main manifest attribute, in bazel-bin/src/main/java/build/buildfarm/buildfarm-server.jar

前面的构建看起来很有效:

代码语言:javascript
运行
复制
[vagrant@localhost bazel-buildfarm]$ bazel build //src/main/java/build/buildfarm:buildfarm-server
Starting local Bazel server and connecting to it...
[...]
INFO: Analyzed target //src/main/java/build/buildfarm:buildfarm-server (94 packages loaded, 1623 targets configured).
INFO: Found 1 target...
INFO: Deleting stale sandbox base /home/vagrant/.cache/bazel/_bazel_vagrant/277990f61896f4bac21fb997fb976b70/sandbox
Target //src/main/java/build/buildfarm:buildfarm-server up-to-date:
  bazel-bin/src/main/java/build/buildfarm/buildfarm-server.jar
  bazel-bin/src/main/java/build/buildfarm/buildfarm-server
INFO: Elapsed time: 11.180s, Critical Path: 0.61s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action

jar文件存在:

代码语言:javascript
运行
复制
[vagrant@localhost bazel-buildfarm]$ l bazel-bin/src/main/java/build/buildfarm/buildfarm-server
-r-xr-xr-x. 1 vagrant vagrant 17K Nov 11 11:27 bazel-bin/src/main/java/build/buildfarm/buildfarm-server

我刚刚安装了bazel使用CentOS回购与所有依赖(gcc gcc-c++),并克隆了巴泽尔建设农场的git回购。使用

代码语言:javascript
运行
复制
bazel run //src/main/java/build/buildfarm:buildfarm-server $(pwd)/examples/server.config.example

服务器至少可以成功地启动:

代码语言:javascript
运行
复制
INFO: Analyzed target //src/main/java/build/buildfarm:buildfarm-server (0 packages loaded, 0 targets configured).
INFO: Found 1 target...
Target //src/main/java/build/buildfarm:buildfarm-server up-to-date:
  bazel-bin/src/main/java/build/buildfarm/buildfarm-server.jar
  bazel-bin/src/main/java/build/buildfarm/buildfarm-server
INFO: Elapsed time: 0.325s, Critical Path: 0.00s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action
INFO: Build completed successfully, 1 total action
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Nov 12, 2019 3:08:13 PM build.buildfarm.server.BuildFarmServer <init>
INFO: buildfarm-server-c6735a2a-2c1b-473e-9d3e-14fe5d01c27d initialized

我做错了什么?或者还有另外一种方式来运行bazel,以一种生产准备的方式?

Platform:CentOS 7.7.1908和Bazel1.1.0在Vagrant上

EN

回答 1

Stack Overflow用户

发布于 2020-01-06 12:45:25

虽然我不知道任何关于构建农场的具体情况,但是在使用Bazel运行的目标和它的参数之间可能缺少一个双破折号(--)。您的命令行应该是:

代码语言:javascript
运行
复制
bazel run //src/main/java/build/buildfarm:buildfarm-server -- $(pwd)/examples/server.config.example
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58823364

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档