从 maven 迁移到 bazel



嗨,我正在尝试将我的项目从 maven 迁移到 bazel。 我面临的挑战之一是迁移测试配置。

初始化测试时,代码会将一些配置属性写入属性文件。 在其中一个测试配置中,它尝试在 maven 默认创建的"/target"位置创建此属性文件。

但是,在将这些测试迁移到使用 bazel 运行时,它找不到名为 target 的文件夹,因此测试失败。

使用不同的文件夹更改每个测试将是艰巨的任务。 有没有办法在 bazel 中创建类似 maven 的文件夹结构?

Bazel 在由环境变量$TEST_SRCDIR表示的目录中运行测试,并在测试期间$TEST_TMPDIR访问临时目录。我相信这里唯一的方法是增加每个测试,要么不写target/,要么写$TEST_TMPDIR而不是target/

此外,与Maven不同,Bazel不允许你的测试写入你的源目录。这是为了确保可重复性和密封性,这也是Bazel在为每个测试独立创建的单独洁净室环境中运行测试的原因。

最新更新