我想做一个独立的网络应用程序。我有一些问题与SpringBoot。我的应用程序是SpringBoot中的一个jar文件。但是我的应用程序通常需要jdbc驱动程序jar。我想为我的应用程序排除jdbc驱动程序jar,并从lib文件夹中读取库jar。但是SpringBoot lib文件夹是BOOT-INF/lib,所以,我想为jdbc驱动程序jar添加外部类路径(lib)。如何在SpringBoot中配置额外的类路径,有吗?
BOOT-INF/lib
rqdpfwrv1#
可以使用loader.path参数定义外部lib文件夹的位置。该文件夹下的所有jar文件都将添加到类路径中。例如,如果要将C:\extLib定义为外部lib文件夹,可以执行以下操作:
loader.path
C:\extLib
java -Dloader.path=/C:/extLib/ -jar aapName.jar
要使其正常工作,您需要使用PropertysLauncher。有两种方法可以实现这一点:
更新项目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>
从命令行启动应用程序时,请使用PropertysLauncher:
java -cp aapName.jar -Dloader.path=/C:/extLib/ org.springframework.boot.loader.PropertiesLauncher
参考文献:How to add jars to SpringBoot classpath with jarlauncher
nhhxz33t2#
您可以参考下面的链接从 Spring Boot :https://docs.spring.io/spring-boot/docs/current/reference/html/executable-jar.html#executable-jar-property-launcher-features可以使用loader.path属性定义lib文件夹位置
kx7yvsdv3#
在我的例子中,需要“引号来查找Windows平台上的外部lib文件夹
java -cp ScoreExtractionApp.jar -Dloader.path="lib" -Dloader.main=com.sample.score.ScoreExtraction.ScoreExtractionApplication org.springframework.boot.loader.PropertiesLauncher
1aaf6o9v4#
您可以使用maven jar插件在maven中配置类路径
<plugin> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifestEntries> <Class-Path>conf/</Class-Path> </manifestEntries> <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> </manifest> </archive> </configuration> </plugin>
4条答案
按热度按时间rqdpfwrv1#
可以使用
loader.path
参数定义外部lib文件夹的位置。该文件夹下的所有jar文件都将添加到类路径中。例如,如果要将C:\extLib
定义为外部lib文件夹,可以执行以下操作:要使其正常工作,您需要使用PropertysLauncher。有两种方法可以实现这一点:
更新项目pom.xml并添加以下标记:
有效的构建标记,更新后的内容如下所示:
从命令行启动应用程序时,请使用PropertysLauncher:
参考文献:
How to add jars to SpringBoot classpath with jarlauncher
nhhxz33t2#
您可以参考下面的链接从 Spring Boot :
https://docs.spring.io/spring-boot/docs/current/reference/html/executable-jar.html#executable-jar-property-launcher-features
可以使用loader.path属性定义lib文件夹位置
kx7yvsdv3#
在我的例子中,需要“引号来查找Windows平台上的外部lib文件夹
1aaf6o9v4#
您可以使用maven jar插件在maven中配置类路径