2

我按以下方式构建了我的代码:

BUCK
component A
  src
  test
  BUCK
component B
  src
  test
  BUCK

请参阅此处的示例。

每个组件的 BUCK 文件如下所示:

java_library(
  name = 'selendroid-standalone',
  srcs = glob(['src/**/*.java']),
  visibility = [ 'PUBLIC' ],
  deps = [
    ...
  ],
  resources = [
    '//apps/selendroid-server-apk:selendroid-server-apk',
  ],
)

java_test(
  name = 'selendroid-standalone-tests',
  srcs = glob(['test/**/*.java']),
  deps = [
     ...
  ],
)

java_binary(
  name = 'selendroid-standalone-bin',
  deps = [ 
    ':selendroid-standalone',
  ],  
)

project_config(
  src_target = ':selendroid-standalone',
  src_roots = [ 'src' ],
  test_target = ':selendroid-standalone-tests',
  test_roots = ['test','test-resources'],
)

我希望能够做到:

$ buck build selendroid   # This should build everything
$ buck test selendroid    # This should test everything

我的问题是:顶级BUCK文件应该是什么样的?

4

1 回答 1

5

在您的 .buckconfig 文件中,添加以下内容:

  [alias]
  selendroid = //path/to/some:target

您只能在每个别名中指定一个目标,但这可能是一个聚合您关心的子目标的目标。

要运行所有测试,请使用buck test --all

于 2014-11-26T13:25:21.580 回答