通过Springboot工程部署vue项目

一般vue工程会单独部署到nginx服务器上,但是也有些会跟后端服务一起打包部署,这里简单介绍一种方法。

首先在已有的项目中添加静态资源映射:

@Configuration
public class MvcConfig extends WebMvcConfigurationSupport {

    @Autowired
    private ConfigProperties configProperties;

    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX + "/static/");
        super.addResourceHandlers(registry);
    }
}

然后再resources目录创建static目录,将vue打包后的dist目录下的所有文件copy到static下即可。

启动项目访问:http://ip:port/static/index.html

当然这么做有一点不方便,前端修改代码后端也需要重新打包,所以我们可以映射到项目外

@Configuration
public class MvcConfig extends WebMvcConfigurationSupport {

    @Autowired
    private ConfigProperties configProperties;

    @Override
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/static/**").addResourceLocations(ResourceUtils.CLASSPATH_URL_PREFIX + "/static/");
        registry.addResourceHandler(configProperties.getPath()).addResourceLocations("file:" + configProperties.getResourceLocations());
        super.addResourceHandlers(registry);
    }
}

我们将资源路径做成可配置:

@Configuration
@ConfigurationProperties(prefix = "view")
@Data
public class ConfigProperties {

    private String path;

    private String resourceLocations;

}

配置文件:

server:
  port: 8080
spring:
  application:
    name: test
  profiles:
    active: dev
view:
  path: /demo/**
  # D:/work/dist/
  resourceLocations: D:/work/dist/

这样就实现可配置部署vue工程,将vue打包好的dist目录路径配置到resourceLocations,访问路径配置到path

按照上面配置,启动项目访问:http://ip:port/demo/index.html

 

 

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

haohao_ding

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值