spring boot项目本地可以运行,打包之后运行jar包缺少驱动依赖。

原因是jar包是从外部下载到本地再导入进来,打包时没有一起打包进来。

百度试了几个方案,最后是用下面这个方案解决的:

1.在根目录下新建libs文件夹,将需要的jar放进去。

spring boot 找不到 springboot找不到依赖项_spring boot 找不到

 

2.在pom中加入以下配置,导入本地jar。

<dependency>
    <groupId>com.baidu</groupId>
    <artifactId>progress</artifactId>
    <version>12.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/libs/progress.jar</systemPath>
</dependency>
 
<dependency>
    <groupId>com.baidu</groupId>
    <artifactId>openedge</artifactId>
    <version>12.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/libs/openedge.jar</systemPath>
</dependency>

 systemPath是引入本地jar包的位置,这个最重要。

 

3. 加上includeSystemScope参数,在pom的spring boot打包插件中。

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <includeSystemScope>true</includeSystemScope>
    </configuration>
</plugin>