我有一个项目,其中包含一个文件extra-config.properties
在src/main/Resources
我引用在我的代码使用:
getClass().getClassLoader().getResourceAsStream("extra-config.properties"))
这在JVM模式下非常有效,但是当我构建本机映像时,该文件无法访问,因为它不包含在二进制文件中。
我怎么能指示Quarkus把它包括在内?
构建本机二进制文件时,GraalVM默认不在映像中包含类路径资源。相反,您需要指定-H:包括资源
,如此处所述。
在QUUKUS中做到这一点的方法是配置QUUKUS-Maven-plugin
插件以添加addtionalBuildArgs
属性。配置如下所示:
<plugin>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-maven-plugin</artifactId>
<version>${quarkus.version}</version>
<executions>
<execution>
<goals>
<goal>native-image</goal>
</goals>
<configuration>
<additionalBuildArgs>-H:IncludeResources=extra-properties.json</additionalBuildArgs>
</configuration>
</execution>
</executions>
</plugin>