ERROR: BUILD:10:1: //:greeter: 在 ‘java_library’ 规则中没有名为 ‘src’ 的属性

huangapple 未分类评论46阅读模式
英文:

ERROR: BUILD:10:1: //:greeter: no such attribute 'src' in 'java_library' rule

问题

收到通过Bazel编译Java项目时遇到的异常。

BUILD:10:1: //:greeter: 在 'java_library' 规则中没有名为 'src' 的属性

BUILD 文件:

load("@rules_java//java:defs.bzl", "java_binary")

java_binary(
    name="ProjectRunner",
    srcs = ["src/main/java/com/example/ProjectRunner.java"],
    main_class = "com.example.ProjectRunner",
    deps = [":greeter"],
)

java_library(
    name="greeter",
    src=["src/main/java/com/example/Greeting.java"],
)
英文:

Got the following exception when compiling a Java project via Bazel.

BUILD:10:1: //:greeter: no such attribute 'src' in 'java_library' rule

BUILD file:

load("@rules_java//java:defs.bzl", "java_binary")

java_binary(
        name="ProjectRunner",
        srcs = ["src/main/java/com/example/ProjectRunner.java"],
        main_class = "com.example.ProjectRunner",
        deps = [":greeter"],
)

java_library(
        name="greeter",
        src=["src/main/java/com/example/Greeting.java"],
)

答案1

得分: 0

问题的原因是在BULID文件中的java_library规则中,属性名称为:srcs而不是src。

load("@rules_java//java:defs.bzl", "java_binary")

java_binary(
        name="ProjectRunner",
        srcs = ["src/main/java/com/example/ProjectRunner.java"],
        main_class = "com.example.ProjectRunner",
        deps = [":greeter"],
)

java_library(
        name="greeter",
        srcs=["src/main/java/com/example/Greeting.java"],
)

编译并且现在正在运行。

INFO: 已分析目标 //:ProjectRunner (已加载1个软件包,已配置4个目标)。
INFO: 找到1个目标...
目标 //:ProjectRunner 已更新:
  bazel-bin/ProjectRunner.jar
  bazel-bin/ProjectRunner
INFO: 耗时: 0.079秒,关键路径: 0.00秒
INFO: 0个进程。
INFO: 构建已成功完成,共计1个动作
英文:

The problem is caused by the fact that the attribute name in the java_library rule in the BULID file is: srcs not src.

load("@rules_java//java:defs.bzl", "java_binary")

java_binary(
        name="ProjectRunner",
        srcs = ["src/main/java/com/example/ProjectRunner.java"],
        main_class = "com.example.ProjectRunner",
        deps = [":greeter"],
)

java_library(
        name="greeter",
        **srcs**=["src/main/java/com/example/Greeting.java"],
)

Compiled and now running.

INFO: Analyzed target //:ProjectRunner (1 packages loaded, 4 targets configured).
INFO: Found 1 target...
Target //:ProjectRunner up-to-date:
  bazel-bin/ProjectRunner.jar
  bazel-bin/ProjectRunner
INFO: Elapsed time: 0.079s, Critical Path: 0.00s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action

huangapple
  • 本文由 发表于 2020年4月9日 11:29:56
  • 转载请务必保留本文链接:https://java.coder-hub.com/61113481.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定