所以BUILD结构如下:
爪哇:
/src/java/com/abc/code/Code.java
资源:
/src/resources/com/abc/code/application.properties
构建文件组
filegroup(
name = "properties",
srcs = glob(["application.properties"])
visibility = ["//visibility:public"],
)
应用程序的构建使用文件组作为资源/类路径_资源
java_binary(
name = "app",
classpath_resources = [
"//src/resources/com/abc/code:properties",
],
# resources = [
# "//src/resources/com/abc/code:properties",
# ],
main_class = "com.abc.code.Code",
runtime_deps = [
":app_bin",
],
)
回来null
_Code.class.getResourceAsStream("application.properties");
在检查生成的 jar 之后,发现 application.properties 位于顶部/
jar tf poc_delivery_system_app.jar
META-INF/
META-INF/MANIFEST.MF
application.properties
然后更新 Code.class.getResourceAsStream("/application.properties");
有效的代码,
问题是为什么application.properties
在顶层而不是像/com/abc/code/application.properties