SpringCloud项目打包部署

本文详细介绍了SpringCloud项目的打包及部署流程,包括使用Maven生命周期进行清理与打包、解决依赖错误的方法以及如何运行最终生成的Jar包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.父模块用maven 的 Lifecycle

maven清理一下
就是删除target目录下的编译的class文件以及配置等在这里插入图片描述

一般都会成功在这里插入图片描述

2.打包 生成jar

还是调用父模块的maven Lifecycle
在这里插入图片描述
在这里插入图片描述
如果出现报错:
依赖别的模块报错
在这里插入图片描述
解决方法
1.把父模块的Pom.xml的maven插件注释

  <build>
        <!--<plugins>-->
            <!--<plugin>-->
                <!--<groupId>org.springframework.boot</groupId>-->
                <!--<artifactId>spring-boot-maven-plugin</artifactId>-->
            <!--</plugin>-->
        <!--</plugins>-->
    </build>

2.同时注意子模块要maven插件

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

3.至此SpringCloud打包完成 ,运行jar包

1.部署运行
获得到子模块里面的Jar包后 CMD 进入对应的目录
执行

java -Dfile.encoding=utf-8 -jar  jar名
#设置jar的格式为UTF-8
### Spring Cloud 项目打包部署最佳实践 #### 使用 Maven 生命周期管理父模块 对于 Spring Cloud 项目打包,采用 Maven 的生命周期来处理整个过程是一个高效的方法。通过配置父 POM 文件中的 `Lifecycle` 来统一管理和控制所有子模块的构建流程[^1]。 ```xml <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <skipTests>true</skipTests> </configuration> </plugin> </plugins> </build> ``` #### 子模块中添加特定插件支持 为了确保每个子模块能够独立被打包成可执行 JAR 文件,在各子模块下的 `pom.xml` 中应加入如下所示的 `spring-boot-maven-plugin` 插件配置: ```xml <build> <finalName>${project.artifactId}</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> ``` 此设置允许开发者利用 Maven 命令轻松创建包含应用程序所需依赖项在内的单一文件形式的应用程序镜像[^3]。 #### 构建并发布至 Linux 服务器 完成上述准备工作之后,可以通过命令行工具或 IDE 内置功能触发完整的编译、测试以及最终制品生成操作。一旦获得了目标平台兼容的目标文件(通常是 `.jar`),就可以将其传输到远程主机并通过 SSH 进行安装和服务启动: ```bash scp target/*.jar user@remote:/path/to/deploy/ ssh user@remote 'nohup java -jar /path/to/deploy/your-app.jar --server.port=8080 > app.log &' ``` 以上步骤实现了从本地开发环境向生产环境中迁移应用实例的过程,并且保持了良好的自动化程度和灵活性[^2]。 #### Nacos 注册中心集成注意事项 当涉及到更复杂的分布式系统时,如引入 Nacos 作为服务发现组件,则需要注意合理规划资源分配情况,尤其是在多节点集群环境下要充分考虑到性能瓶颈可能出现的位置。此外,还需关注版本兼容性和网络连通性等问题以保障整体稳定性[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值