当前位置: 首页 > news >正文

项目打包与部署 —— 把 Java 项目 “装瓶带走”(本地运行→服务器落地全流程)

咱们给项目装了 “黑匣子” 和 “显微镜”,能查问题、调 bug,但项目始终 “困在” 你的 IDEA 里 —— 想发给同事演示,传一堆代码文件对方还跑不起来;想部署到公司服务器让全部门用,更是不知道从哪下手。

这就像奶茶店只在店里做奶茶,客人不能外带,生意永远做不大。今天这篇,咱们教你把 Java 项目 “装瓶打包” 成独立的jar包,既能在自己电脑双击运行,也能部署到 Windows/Linux 服务器,真正实现 “写好的项目能落地、能共用”。

一、先搞懂:为什么要 “打包部署”?(奶茶外带的类比)

先跟你掰扯清楚 “打包部署” 的核心价值,新手常觉得 “在 IDEA 里能跑就行”,但实际工作中这远远不够:

  • 本地打包:把项目从 “IDEA 工程文件” 变成 “独立 jar 包”,就像奶茶从 “店里的制作杯” 装成 “密封外带杯”,不用带整个奶茶店,拿着杯子就能喝;
  • 服务器部署:把 jar 包放到专门的服务器上运行,就像奶茶店开 “分店”,所有人都能通过网络访问(比如同事输入http://服务器IP:8080/book/list就能查图书),不用挤在你电脑上用。

新手打包部署常踩的 3 个坑,提前给你打预防针:

  1. 打出来的 jar 包 “没主类”,双击没反应,像外带杯没装奶茶;
  2. 服务器上没装 JDK,jar 包跑不起来,像分店没通电;
  3. 项目配置没改,服务器上的 jar 包还连本地 MySQL,导致数据库连接失败,像外带奶茶没放吸管,喝不了。

二、第一部分:本地打包 —— 把项目变成 “可外带的 jar 包”

Spring Boot 项目打包比传统 Java 项目简单太多,核心靠spring-boot-maven-plugin插件,能自动把项目依赖(比如 MyBatis-Plus、Lombok)和主类信息打包进去,生成 “可直接运行的 jar 包”。

步骤 1:配置 pom.xml—— 给 “外带杯” 装核心零件

打开项目的pom.xml,确认两个关键配置(没有就加上),这是打可执行 jar 包的前提:

xml

<!-- 1. 父依赖:Spring Boot打包的基础,必须有 -->
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.7.10</version> <!-- 和之前保持一致,别乱改 -->
</parent><!-- 2. Spring Boot打包插件:核心!负责把项目打成可执行jar包 -->
<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.7.10</version><configuration><!-- 指定主类(启动类的全路径,避免打出来的jar没主类) --><mainClass>com.example.bookmanage.BookManageApplication</mainClass></configuration><executions><execution><goals><goal>repackage</goal> <!-- 重打包,生成可执行jar --></goals></execution></executions></plugin></plugins>
</build>
🔍 图示 1:pom.xml 打包配置关键区域示意图
配置项 作用说明 界面标注
http://www.dtcms.com/a/564859.html

相关文章:

  • 湘潭做网站价格找磐石网络一流河北网站建设哪家好
  • React 11 登录页项目框架搭建
  • MySQL物理备份之Percona XtraBackup
  • 糖尿病预测多个机器学习维度预测
  • CSP-J教程——第一阶段——第三课:基本的输入与输出
  • 营销网站怎么做合适全站搜索
  • 解决IntelliJ IDEA控制台输出中文乱码问题
  • 昆仑芯 X HAMi X 百度智能云 | 昆仑芯 P800 XPU/vXPU 双模式算力调度方案落地
  • HarmonyOS6.0开发实战:HTTP 网络请求与 API 交互全指南
  • 合肥网站开发建设wordpress使用难不难
  • 杭州市上城区建设局网站江阴网页设计
  • 【软考】信息系统项目管理师-进度管理论文范文
  • 开关电源的短路保护如何测试?又需要哪些仪器呢?-纳米软件
  • 从 0 到 1 掌握医学图像分割 的完整实战指南
  • HTML应用指南:利用POST请求获取全国爱回收门店位置信息
  • 在线下载免费软件的网站网页设计模板图片html
  • 第九天 - psutil系统监控库 - 资源监控仪表盘 - 练习:实时CPU/Memory监控
  • CentOS/AlmaLinux 9 中 SSH 服务启动失败:OpenSSL 版本不匹配解决
  • MAC-SQL 论文翻译
  • 海宁最火高端网站设计推荐crack wordpress
  • Kanass零基础学习,如何进行任务管理
  • 3 个诊断 Linux 服务器的脚本
  • Spring Boot Bean 生命周期注解深度解析:@PostConstruct 与 @PreDestroy 面试高频考点 + 实战案例
  • 深入浅出 Java 虚拟机之实战部分
  • 营销型网站建设的认识wordpress支持python吗
  • iOS 26 CPU 使用率监控策略 多工具协同构建性能探索体系
  • iOS 文件管理与导出实战,多工具协同打造高效数据访问与调试体系
  • 文件上传(vue3+element-plus+php)
  • Unity与iOS原生交互开发入门篇 - 打开iOS设置
  • Python循环continue与break