Hello! 欢迎来到小浪资源网!


SpringBoot项目部署到服务器报错ClassNotFoundException,如何排查解决?


SpringBoot项目部署到服务器报错ClassNotFoundException,如何排查解决?

springboot 项目部署在服务器上报错,如何解决?

在使用 springboot 部署在宝塔服务器时,遇到了无法识别类的错误。

报错信息:

exception in thread "main" Java.lang.classnotfoundexception: classes.com.example.demo.demoapplication

解决方法

首先,检查项目本身是否有问题,本地打包后运行是否有报错。

本地打包部署:

  1. 使用 java -jar 命令运行打包出来的 jar 文件。
  2. 检查控制台输出,是否有类似的报错信息。

修改 maven 插件配置:

如果本地部署正常,可能是打包配置问题。在 pom.xml 中的 spring-boot-maven-plugin 配置中移除 configuration 和 executions 元素。

    <plugin>         <groupId>org.springframework.boot</groupId>         <artifactId>spring-boot-maven-plugin</artifactId>         <version>2.6.0</version>         <!-- <configuration>             <mainClass>com.example.demo.DemoApplication</mainClass>             <finalName>XTool</finalName>             <includes>                 <include>                     <groupId>nothing</groupId>                     <artifactId>nothing</artifactId>                 </include>             </includes>         </configuration> -->         <!-- <executions>             <execution>                 <goals>                     <goal>repackage</goal>                 </goals>             </execution>         </executions> -->     </plugin>

重新打包部署:

  1. 重新打包项目,生成 jar 文件。
  2. 将 jar 文件部署到宝塔服务器。

其他建议:

  • 确认项目中的 main 类是正确的。
  • 确保依赖关系正确。
  • 检查服务器的 java 环境是否满足要求。
  • 查看服务器的日志文件,了解更详细的报错信息。

相关阅读