springboot项目手动引入第三方jar包打包后启动失败

大家好我是图恩,最近在优化后端服务代码的时候引入了第三方jar包,本地开发调试的时候一切正常,通过package命令打包后再通过-jar命令启动的时候启动报错,提示一下错误信息:

Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class
[com.dsiab.manageService.controller.PromoteController] from ClassLoader ...

pom.xml文件代码如下,jar包文件放在resource目录下。


<dependency>
     <groupId>com.dsiab</groupId>
     <artifactId>dsiab</artifactId>
     <scope>system</scope>
     <version>1.0</version>
     <systemPath>${basedir}/src/main/resources/lib/xxx.jar</systemPath>
</dependency>

最终解决办法就是在pom文件中的build配置中加入includeSystemScope命令

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.6.5</version>
                <!-- 打包时可以通过jar命令单独运行 -->
                <executions>
                    <execution>
                        <goals>
                            <goal>
                                repackage
                            </goal>
                        </goals>
                    </execution>
                </executions>
                <!--加入这个includeSystemScope,解决引入第三方包后本地运行正常,打包后报错问题-->
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
            </plugin>
        </plugins>
    </build>


本文章由javascript技术分享原创和收集

发表评论 (审核通过后显示评论):