java - Spring Boot 的外部库文件夹

我想知道如何为我的 Spring Boot 应用程序外部化所有 jdbc 驱动程序,我不想在构建应用程序后将 jdbc 驱动程序插入到我的 fat jar 中。

有没有办法设置一个java vm参数,通知jar执行应该包含哪个外部文件夹?或者可能存在某种 Spring 属性。

例如:

java  -DLib=file:\\\c:\Drivers -jar sample.jar

最佳答案

请参阅有关 PropertiesLauncher 的文档:

  • https://docs.spring.io/spring-boot/docs/current/reference/html/executable-jar.html#executable-jar-property-launcher-features

看起来您可以使用 loader.path 属性来定义一个 lib 文件夹位置,其中包含要加载的 jar - 实际上 lib 文件夹(与 jar 内联)是默认位置:

loader.path (if empty) defaults to lib (meaning a local directory or a nested one if running from an archive)

https://stackoverflow.com/questions/30745132/

相关文章:

java - 在单元测试运行期间禁用某些方面

java - 在没有 Spring 身份验证的情况下通过 web-socket 多次回复

java - 在哪里以及如何处理 spring+hibernate 异常?

java - 层次树角色的 Spring Security/Java EE 解决方案

java - 如何在 Hibernate 中使用临时表批量删除记录?

eclipse - 从 Eclipse 运行 Spring JUnit 测试时将/src/main/

java - 我可以在 View 层中找到 spring mvc Controller 的 URL

java - QueryDsl 对 Map 字段键的 Web 查询

java - 为什么 PropertyDescriptor 行为从 Java 1.6 更改为 1.7

java - Spring @Transaction 未启动事务