英文:
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
专注分享java语言的经验与见解,让所有开发者获益!
评论