Skip to content

后端项目部署启动

小伙伴需要先把这两节内容阅读完毕

准备项目启动条件

如何安装项目需要的中间件环境

按照文档的说明进行项目和数据库以及中间件的环境都部署完后,就可以开始进行项目的启动了

Gateway网关项目启动

1720778363221-782d1f55-2310-43b8-b77f-f4cd6be5b1e5.jpeg

1720689906953-62e694a9-5b7c-4807-a1b0-9261a7955b46.jpeg

业务服务启动

启动时需要将每个服务都启动起来,BaseDataApplication为基础服务所以要第一个启动,其余服务启动时没有先后关系

CustomizeApplication为执行限流功能服务、AdminApplication为监听服务,MybatisPlusGenerator为代码生成器,这三个服务和业务服务分离,可以不启动

1712043672368-afab8ed0-4dae-43c1-9cec-dc7e2efce51e.png

设置启动参数

项目中设计到中间件的地址都是用的127.0.0.1,如果小伙伴在自己的云服务上搭建了中间件或者使用本人提供的云环境,需要借助设置启动参数的形式将127.0.0.1替换成真正的地址

添加步骤(以节目服务为例)

选择对应的SpringBoot启动入口,先进行Run或者Debug启动一下

1712047770808-2b39980a-e840-40ba-be11-57fd4492c5b8.png

启动完后,idea的右上角就会有启动管理入口了

1712048020743-d47c92b0-b64f-4cd1-a6a9-943662dca602.png

然后选择底部的Edit Configurations... 选项

1712048096449-60479cb5-3a70-4d9e-9c80-ebce4b303f26.png

然后选择对应的服务启动入口,选择Modify options菜单

1712048182213-62edb0a8-230c-4d04-9fc6-1f16456033ab.png

然后选择Add VM options菜单

1712048273376-2a1231b7-4e64-4345-a09e-1ca03ba9e32e.png

然后将具体的参数添加进去

1712048349265-41491ae2-87d0-4c26-a33e-fbee514e4550.png

Gateway网关服务、和其他的服务都需要设置此参数,并且参数都是相同的

详细参数

Springboot3(main分支为此版本)

shell
-XX:MaxMetaspaceSize=256M
-Xmx256M
-Dspring.data.redis.host=${redis地址}
-Dspring.data.redis.password=${redis地址密码}
-Dspring.cloud.nacos.discovery.server-addr=${nacos地址}:8848
-Dspring.kafka.bootstrap-servers=${kafka地址}:9092
-Delasticsearch.ip=${elasticsearch地址}:9200
-Delasticsearch.userName=${elasticsearch账户}
-Delasticsearch.passWord=${elasticsearch账户密码}
-Dprefix.distinction.name=my

Springboot2(main-springboot-2分支为此版本)

shell
-XX:MaxMetaspaceSize=256M
-Xmx256M
-Dspring.redis.host=${redis地址}
-Dspring.redis.password=${redis地址密码}
-Dspring.cloud.nacos.discovery.server-addr=${nacos地址}:8848
-Dspring.kafka.bootstrap-servers=${kafka地址}:9092
-Delasticsearch.ip=${elasticsearch地址}:9200
-Delasticsearch.userName=${elasticsearch账户}
-Delasticsearch.passWord=${elasticsearch账户密码}
-Dprefix.distinction.name=my

注意!

1740562116567-a0f52375-4748-488e-b2df-7c8b06d18ab7.png

项目中配置的连接nacos的账号和密码都是nacos

nacos中间件搭建好后默认的账号和密码也都是nacos

如果你自己搭建的nacos账号和密码进行了修改,那么项目连接nacos的账号和密码也要修改才行!!!

可以再添加以下密令:

shell
-Dspring.cloud.nacos.discovery.username=${你的nacos账号}
-Dspring.cloud.nacos.discovery.password=${你的nacos密码}

替换成本人提供的中间件地址启动命令

如果大家想使用本人提供的中间件来启动的话,可以直接粘贴下面的命令,就不用一个个的替换了,节省小伙伴的时间

Springboot3(main分支为此版本)

shell
-XX:MaxMetaspaceSize=256M
-Xmx512M
-Dspring.data.redis.host=common-framework.com.cn
-Dspring.data.redis.password=vcxz%&356
-Dspring.cloud.nacos.discovery.server-addr=common-framework.com.cn:8848
-Dspring.kafka.bootstrap-servers=common-framework.com.cn:9092
-Delasticsearch.ip=common-framework.com.cn:9200
-Delasticsearch.userName=elastic
-Delasticsearch.passWord=zxc321
-Dprefix.distinction.name=my

Springboot2(main-springboot-2分支为此版本)

shell
-XX:MaxMetaspaceSize=256M
-Xmx512M
-Dspring.data.redis.host=common-framework.com.cn
-Dspring.data.redis.password=vcxz%&356
-Dspring.cloud.nacos.discovery.server-addr=common-framework.com.cn:8848
-Dspring.kafka.bootstrap-servers=common-framework.com.cn:9092
-Delasticsearch.ip=common-framework.com.cn:9200
-Delasticsearch.userName=elastic
-Delasticsearch.passWord=zxc321
-Dprefix.distinction.name=my

参数说明(非常重要!!!)

  • prefix.distinction.name不要用默认的 **my **!!!
    • 它作用是为了多人使用云环境的中间件时,保持每个人的数据唯一,通过此配置在相应的中间件数据中加上前缀就可以实现唯一了,比如Redis中的键名、Nacos的注册服务名、Kafka的Topic、Elasticsearch中的索引名。
    • 所以一定要换成你自己唯一的标识!!!
    • **注意:**值一定要都小写!(例如mytest)否则es会创建索引失败!
  • 节目服务的初始化时产生的数据较多,所以内存设置要大一点,可调整 -XX:MaxMetaspaceSize=512M、-Xmx1024M

启动错误

有的小伙伴在启动时,会出现如下图中的错误,只要按图中指示,选择 Shorten the command line and rerun 即可

1721827574188-cc59ae8d-26e9-40f1-9ed3-8ae63c16fd45.png

启动出现“ClassNotFoundException”异常

有的小伙伴将中间件都配置正确,数据库的配置也没问题,启动时出现了“ClassNotFoundException”异常

1761574891005-eff8f8b5-67f0-4593-b543-c980fe567b82.png

这时要修改启动的配置,在 缩短命令行,选择 JAR清单 - java -cp classpath.jar className [args]

1761574924507-7a9104cc-a8d9-4c59-922e-8093dff5f711.jpeg

更新: 2025-10-27 22:24:01
原文: https://www.yuque.com/u22210564/ykdrdh/abuf6oviie9r26oa

Java 后端面试知识库