Springboot 打成jar包静态资源问题

无webapp

一般来说springboot默认是没有webapp文件夹的,默认是把静态资源文件或者是jsp,html的网页放在resouces文件夹特定的文件夹中下,这些文件夹在访问时都会被当作根路径。如当test.html文件在resouces/static目录下,则访问路径为http://IP/项目/test.html。不需要添加static目录,可以直接访问。

在springboot中,特定的存放静态资源的目录有

  • resouces/META-INF/resouces
  • resouces/resouces
  • resouces/static
  • resouces/public
  • /

这里的/是指webapp目录,但一般springboot没有webapp目录,所以很少使用

这些文件夹的优先级从上到下一次递减,所以当有同名文件时,后优先访问resouces/META-INF/resouces最后访问resouces/public

当然也可以添加自己的静态文件目录
在配置文件中添加 spring.resources.static-location来指定目录。这会覆盖默认的配置

注意

由于springboot默认是不使用webapp文件夹的,所以当你添加上webapp文件夹后,可能在开发时可以使用webapp的文件,但是一旦打包成jar包,webapp文件夹时没有被打包的,所以你需要进行配置

在pom文件夹下进行如下配置才可以

        
            
                src/main/webapp
                META-INF/resources
                
                    **/**
                
            
        
    
       
            
            src/main/resources
            
            ${project.build.directory}/classes
            
            
                pro/*
                dev/*
                test/*
            
            
            
                
            
            
            true
        
        
        
        
         
            
                src/main/webapp
                META-INF/resources
                
                    **/**
                
            
        

你可能感兴趣的:(spring,boot)