一、系统要求
- JDK >= 1.8
- MySQL >= 5.7
- Maven >= 3.0
- Redis >= 3.0
- Node >= 10
- EMQX
二、开发工具
- 后端: IDEA、Eclipse
- 前端: Virtual Studio Code
- 安卓: Android Studio
三、运行
- 后端:
1. Mysql新建wumei-smart数据库,导入spring-boot中的sql文件
2. 打开spring-boot项目,自动安装依赖
3. 编辑resources目录下的application-druid.yml,修改数据库配置信息
4. 编辑resources目录下的application.yml,修改redis、mqtt配置,默认账号admin admin123
5. 运行项目
- 前端:
1. 安装依赖:执行npm install
命令。强烈建议不要用直接使用 cnpm 安装,会有各种诡异的 bug,可以通过重新指定 registry 来解决 npm 安装速度慢的问题。npm install --registry=https://registry.npm.taobao.org
2. 启动项目:执行 npm run dev
命令
3. 浏览器打开http://localhost:80访问。(默认账户/密码 admin/admin123)
四、后端部署
1. 在spring-boot项目的bin目录下执行package.bat打包Web工程,生成war/jar包文件。spring-boot/ruoyi-admin模块下target文件夹下包含war或jar文件
2. jar部署方式:使用命令行执行:java –jar ruoyi.jar 或者执行脚本:spring-boot/bin/run.bat
3. war部署方式:spring-boot/ruoyi-admin/pom.xml中的packaging修改为war,放入tomcat服务器webapps
五、前端部署
1. 打包正式环境: npm run build:prod
2. 打包预发布环境: npm run build:stage
3. 构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,通常是 ***.js 、***.css、index.html 等静态文件。
六、Android项目打包
1. 修改工程根目录的gradle.properties中的isNeedPackage=true。
2. 添加并配置keystore,在versions.gradle中修改app_release相关参数。
3. 如果考虑使用友盟统计的话,在local.properties中设置应用的友盟ID:APP_ID_UMENG。
4. 使用./gradlew clean assembleReleaseChannels进行多渠道打包。
七、Nginx配置
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root /html/vue;
try_files $uri $uri/ /index.html;
index index.html index.htm;
}
location /prod-api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}