我想做一个独立的web应用程序。我对SpringBoot有些问题。
我的应用程序是来自SpringBoot的一个jar文件。
但我的应用程序通常需要jdbc驱动程序jar。我想为我的应用程序排除jdbc驱动程序jar,并从lib文件夹中读取库jar。
但是SpringBoot库文件夹是BOOT-INF/lib is final static。因此,我想为jdbc驱动程序jar添加外部类路径(lib)。
如何在SpringBoot中配置额外的类路径。有空的吗?
发布于 2018-12-19 17:40:02
可以使用loader.path参数定义外部库文件夹的位置。此文件夹下的所有jars都将添加到类路径中。例如,如果您想将C:\extLib定义为您的外部库文件夹,您可以执行以下操作:
java -Dloader.path=/C:/extLib/ -jar aapName.jar要使其正常工作,您需要使用PropertiesLauncher。有两种方法可以做到这点:
选项1
更新工程pom.xml,添加如下标签:
<configuration> <!-- added -->
<layout>ZIP</layout> <!-- to use PropertiesLauncher -->
</configuration有效的构建标签,更新后如下所示:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration> <!-- added -->
<layout>ZIP</layout> <!-- to use PropertiesLauncher -->
</configuration>
</plugin>
</plugins>
</build>选项2
从命令行启动应用程序时使用PropertiesLauncher:
java -cp aapName.jar -Dloader.path=/C:/extLib/ org.springframework.boot.loader.PropertiesLauncher参考文献:
发布于 2016-11-09 13:36:44
你可以参考下面来自spring boot的链接:
您可以使用loader.path属性来定义库文件夹位置
发布于 2020-01-01 00:29:10
在我的例子中,需要引用来查找windows平台上的外部lib文件夹。
java -cp ScoreExtractionApp.jar -Dloader.path="lib" -Dloader.main=com.sample.score.ScoreExtraction.ScoreExtractionApplication org.springframework.boot.loader.PropertiesLauncherhttps://stackoverflow.com/questions/40499548
复制相似问题