打包为jar包运行后出现访问不了页面的问题,出现404。springboot 使用内嵌容器来提供服务,但是当我使用Eclipse将maven 打可执行jar时,其无法将静态文件(html/jsp)一并打入可执行文件。

项目结构如图:

此时在你的pom.xml文件中加入下面这段代码:

<build>
  <resources>
	   <resource>
	       <directory>${basedir}/src/main/webapp</directory>
           <!-- 注意此次必须要放在此目录下才能被访问到 -->
	       <targetPath>META-INF/resources</targetPath> 
	            <includes>
	                <include>**/**</include>
	            </includes>
	   </resource>
	   <resource>
	       <directory>${basedir}/src/main/resources</directory>
	            <includes>
	                <include>**/**</include>
	            </includes>
	       </resource>
	   </resources>
    <plugins>
    <!-- spring-boot-maven-plugin插件就是打包spring boot应用的 -->
     <plugin>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-maven-plugin</artifactId>
         <configuration>
            <executable>true</executable>
         </configuration>
     </plugin>
     <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.18.1</version>
        <configuration>
          <skipTests>true</skipTests>
        </configuration>
      </plugin>
   </plugins>
  </build>

然后再选中项目run as------maven clean------maven install

将jar包提出来cmd------java -jar XXX.jar

运行,完美。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐