今天在打包部署一个后端 Spring boot + 前端 JSP 的项目时,遇到了问题(打JAR包)
报错如下:
原因是生成的target包中,没有META-INF这个文件夹,如下如:
造成这个问题的原因是因为打包时,没有识别到spring boot的启动类
### 本人解决问题方法:
第一步,删除下图中的所有信息(就是创建web时,生成的那些)
第二步,将webapp和resourses设置成一样的类型,如下图:
第三步,在pom文件中设置如下代码:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>3.1.0</version> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>1.4.2.RELEASE</version> </plugin> </plugins> <!-- resources必须配置,否则404无法找到jsp页面--> <resources> <resource> <directory>src/main/webapp</directory> <!--targetPath 设置必须是 META-INF/resources--> <targetPath>META-INF/resources</targetPath> <includes> <include>**/**</include> </includes> </resource> <resource> <directory>src/main/resources</directory> <filtering>true</filtering> </resource> </resources> <testResources> <testResource> <directory>src/test/resource</directory> <filtering>true</filtering> </testResource> </testResources> </build>
完成上述步骤后,clean自己的项目,然后重新package就可以了 !!!