场景
若依微服务版手把手教你本地搭建环境并运行前后端项目:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/109363303
在前面已经将若依微服务版在本地运行,如果想要将服务全部部署到Windows服务器上怎么打包。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
首先在IDEA中打开该项目,然后停掉所有的运行的服务。
当然在打包之前,要确保你连接的mysql数据库和Redis和Nacos以及配置文件已经配置正确。
若依项目目录下会有个bin目录,下面有两个bat文件,这两个文件执行的就是Maven 的clean和package的命令。也可以直接在IDEA中找到右边的Maven面板,然后找到最外层的ruoyi下的clean和package这两个,依次点击。
打包成功后会将所有的模块打成jar包
然后来到项目目录下
然后就会在相应的模块下找到jar包
那么需要启动的jar包就和本地IDEA需要启动哪个服务一样。
依次将网关、认证、系统、自己的业务模块的jar包复制到Windows服务器上某个路径下
然后在此目录下打开cmd,依次运行
java -jar ruoyi-auth-2.2.0.jar
依次运行这四个jar包
但是需要注意的是,如果通过以上方式会导致在从Nacos的配置中心的数据库中解析yml配置文件的编码导致的问题。
会在运行完网关和认证模块后,运行系统和业务模块时提示:
Description:
Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.
Reason: Failed to determine a suitable driver class
解决方式:
在使用cmd运行jar包时指定编码格式,通过
java -Dfile.encoding=utf-8 -jar xxx.jar
来运行jar包就可以解决。
然后后台服务部署好之后,可以在本地运行前端项目进行请求测试
但是在请求测试前记得将服务器上网关服务的端口开放。
然后将ruoyi-ui中vue.config.js中代理的地址修改为服务器的ip和网关服务的端口号
如果不想采用前端借助于VSCode运行前端项目的话,可以前端项目进行打包,然后使用Nginx配置代理。
具体可以参照如下博客:
若依前后端分离版本,Windows下使用Nginx代理的方式进行部署(全流程,图文教程):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/108120070