如何使用Spring Boot将目录放在classpath上?

Wim*_*uwe 10 spring-boot

我正在使用Maven构建我的Spring Boot应用程序,所以我可以使用以下命令启动它:

java -jar myjar-1.0-SNAPSHOT.jar --spring.profiles.active=prod
Run Code Online (Sandbox Code Playgroud)

我希望首先在类路径上有一个目录,这样我就可以在文件系统上放置一些文件,而无需解压缩jar来更改它们.

我尝试过使用loader.path,但它似乎没有用.

java -Dloader.path="config/*" -jar myjar-1.0-SNAPSHOT.jar --spring.profiles.active=prod
Run Code Online (Sandbox Code Playgroud)

config目录是在罐子所在的子目录.我正在尝试加载一个密钥库文件,该文件Resource在我的应用程序中注入.src/main/resources中有这样一个文件,但只能在我的IDE中运行,而不是在打包为jar时.所以我想先将一个文件放在类路径上,以便首先在类路径中找到它.

Dav*_*yer 7

您可以使用loader.path,但仅当Main-ClassPropertiesLauncher(因此它取决于你如何生成JAR文件).也许你需要在Boot插件中重新构建带有packaging = ZIP的JAR(例如这里的文档)?您是否可以将密钥库的路径设置为"file:"URL?