问题:项目打成jar包部署的时候发现无法正常访问页面,访问不到资源。

项目是前后端分离项目,前端文件一直都放在src/main/webapp目录下,之前打成war包放在tomcat下部署时都能正常访问,这次换了打包方式,打成jar包后竟然无法访问到页面,百度之后发现是因为静态资源没有被打入jar包,需要在pom文件中加些配置。配置信息如下:

在<build></build>标签内加入下面的配置就能将静态资源打入jar包

<resources>
    <resource>
        <!-- 指定resources插件处理哪个目录下的资源文件 -->
        <directory>${basedir}/src/main/webapp</directory>
        <!-- 需要将资源文件放到该目录下才能访问 -->
        <targetPath>META-INF/resources</targetPath>
        <includes>
            <include>**/**</include>
        </includes>
    </resource>
    
    <resource>
        <directory>${basedir}/src/main/resources</directory>
    </resource>
</resources>

此时重新打成jar包,通过 “java -jar jar包名称” 启动后就能正常访问项目了。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐