有时候要做一个公司的公共服务模块。不能说大家都直接把代码粘贴进去,因为会需要维护很多份;这样就剩下两个方式了。
方式一:自己独立部署一个公共服务的服务,全公司都调用,通过http、rpc或者grpc的方式,这样还得做类似多租户的隔离
方式二:把公共的模块上传到私服,通过maven从私服拉取回来,这样也可以定制开发,自己选择需要的版本引入
最终选择了方式二
分析
在Spring Boot项目中,将模块上传至私服并通过pom引用下来的过程涉及以下几个步骤:
构建和打包 Spring Boot 模块。这可以通过 Maven 或 Gradle 完成。确保构建配置正确设置,以便生成可分发和引用的jar或war文件。
将生成的jar或war文件部署到私服仓库。这通常涉及到将文件复制到预定义的目录结构,并更新仓库的索引。具体的步骤取决于使用的私服仓库类型和配置。
在需要使用该模块的Spring Boot项目中,添加对该模块的依赖。这通常在项目的pom.xml文件中完成。需要指定模块的坐标(groupId、artifactId和version)以及可能的依赖范围。
当运行Maven install命令时,Maven会自动从私服仓库中解析并下载所需的依赖项。如果私服仓库中有更新的版本,Maven也会自动使用最新的版本。
确保项目能够成功构建和运行,没有任何由于依赖问题导致的错误。
请注意,这些步骤假设已经熟悉 Maven 或 Gradle 的基本用法,并且已经设置了适当的私服仓库配置。此外,还应该考虑安全性和权限问题,特别是当处理敏感信息或进行远程操作时。
步骤
maven settings
<servers>
<server>
<id>xx</id>
<username>xx</username>
<password>xx</password>
</server>
<server>
<id>xx</id>
<username>xx</username>
<password>xx</password>
</server>
</servers>
配置pom
<distributionManagement>
<repository>
<id>xx</id>
<name>Nexus Release Repository</name>
<url>http://127.0.0.1:8090/repository/xx/</url>
</repository>
<snapshotRepository>
<id>xx</id>
<name>Nexus Snapshot Repository</name>
<url>http://127.0.0.1:8090/repository/xx/</url>
</snapshotRepository>
</distributionManagement>
引入
<dependency>
<groupId>com.test.mq</groupId>
<artifactId>rabbitmq-publisher</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
结果
成功了