jeecg-boot项目的部署-windows系统

2024-06-22 05:12

本文主要是介绍jeecg-boot项目的部署-windows系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、基础环境的准备:

1、后台基础环境:JDK、redis、数据库:sqlserver

2、前端基础环境:nginx

redis和nginx的安装都很方便,直接去对应的官网,下载zip压缩包,然后解压,执行.exe文件即可。

验证nginx是否运行成功:

打开任意一个浏览器,输入 localhost,默认是80端口,出现下面的页面,则安装成功。

因为我的服务器是 window server服务器,80端口已被占用,所以修改conf目录下的nginx.conf,修改监听端口为:8090

然后关闭,重启nginx即可!

【特别说明】:

有一个比较坑的点: nginx的配置文件nginx.conf,使用记事本打开修改,好像不行,无法启动,会报错:

还是建议用nodepad文件打开修改。

 

二、项目打包

2-1、jeecg-boot项目打JAR包

1、修改配置文件 application-prod.yml

2、切换Maven为生产模式

3、通过jeecg-boot-parent打包

4、拿到 jeecg-system-start-{版本号}.jar 包

2-2、通过JAR方式启动后台

Window启动命令:cmd进入到jar包的文件路径
java -jar jeecg-system-start-xxx.jar

后台启动成功:端口为8080

2-3、前端vue项目打dist包

npm run build

通过如上命令生成dist文件夹。

 

注意:若是后期修改了前端代码,需要重新打包,先把dist文件夹删除,再执行build命令。

dist文件说明:

在Windows服务器上部署Vue项目的dist文件夹时,通常不需要安装Node.js。

因为dist文件夹是通过npm run build(或类似的构建命令)生成的静态资源集合,它包含了HTML、CSS、JavaScript、图片等文件,这些文件可以直接被Web服务器(如Nginx、Apache、IIS等)服务,而不需要Node.js环境。

打包遇到的问题1: webpack的版本问题

我使用的是vue2的前端,webpack没有配置到package.json文件中,而是作为其他依赖添加进来的,版本是3.12.0。

但是打包的时候,有一个依赖对应的版本要用到webpack 4以上的版本:

当时年少无知,直接在package.json文件中加了webpack 5和对应的脚手架版本

Webpack 4及之前的版本中,CLI工具是作为Webpack的一部分包含在内的,但自Webpack 4开始,CLI工具被拆分为了一个独立的npm包webpack-cli

导致打包报了更多的版本冲突的问题:

于是,一番思索之下,打算直接用webpack4版本

终于解决了webpack的版本冲突的问题。

也因此明白了一些 package.json、package-lock.json和node_modules文件夹之间的关系:

jeecg项目前端代码,直接从git上拉下来是带有 package.json、package-lock.json文件的,初次npm install添加相关依赖,会生成node_modules文件夹,里面都是项目的相关依赖。

所以,要是修改了package.json,需要重新npm install添加相关版本的依赖,可以直接先把node_modules文件夹删掉(我还做了备份,怕修改后以来冲突)。

打包遇到的问题2: 修改访问后台的接口地址

2-4、nginx的配置

在config配置文件中,加上了一个新的server块

upstream pathogen.jeecg.com {server 192.168.10.236:8080;}server {#项目访问的前端端口listen       3000;server_name  192.168.10.236;#前端打的dist资源存放目录root		 D:/pathogenManagement/jeecgCode/dist;# 配置前端静态资源location / {# 用于配合 browserHistory使用(很重要!)try_files $uri $uri/ /index.html;# 不缓存html,防止程序更新后缓存继续生效if ($request_filename ~* .*\.(?:htm|html)$) {add_header Cache-Control "private, no-store, no-cache, must-revalidate, proxy-revalidate";access_log on;} }# 配置后端服务代理location  /jeecgboot/ {#后台接口地址(我们部署去掉了/jeecg-boot项目名,如果你有请加上)proxy_pass         http://192.168.10.236:8080/jeecg-boot/;proxy_redirect off;#真实IP获取proxy_set_header  Host             $host;proxy_set_header  X-Real-IP        $remote_addr;set $my_proxy_add_x_forwarded_for $proxy_add_x_forwarded_for;if ($proxy_add_x_forwarded_for ~* "127.0.0.1"){set $my_proxy_add_x_forwarded_for $remote_addr;}proxy_set_header   X-Forwarded-For $my_proxy_add_x_forwarded_for;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}

配置完,启动nginx,浏览器输入:http://192.168.10.236:3000 即可访问项目!

这篇关于jeecg-boot项目的部署-windows系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1083380

相关文章

springboot项目中整合高德地图的实践

《springboot项目中整合高德地图的实践》:本文主要介绍springboot项目中整合高德地图的实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一:高德开放平台的使用二:创建数据库(我是用的是mysql)三:Springboot所需的依赖(根据你的需求再

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志

《SpringBoot项目配置logback-spring.xml屏蔽特定路径的日志》在SpringBoot项目中,使用logback-spring.xml配置屏蔽特定路径的日志有两种常用方式,文中的... 目录方案一:基础配置(直接关闭目标路径日志)方案二:结合 Spring Profile 按环境屏蔽关

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地