一、搭建nexus私服
nexus就是maven的私有服务器,这个搭建教程可以在网络上找到很多,这里就不赘述了。搭建完成之后再进行下一步
二、本地maven的setting配置文件中配置nexus的用户名和密码
<servers>
<server>
<id>nexus-releases</id>
<username>admin</username>
<password>admin</password>
</server>
<server>
<id>nexus-snapshots</id>
<username>admin</username>
<password>admin</password>
</server>
</servers>
三、配置私服仓库地址
现在的项目工程一般都是多模块,在最外层父级pom文件中配置私服仓库地址
<distributionManagement>
<repository>
<id>release</id>
<name>release</name>
<url>http://xxx.xxx.xxx.xxx:xxxx/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshot</id>
<name>snapshot</name>
<url>http://xxx.xxx.xxx.xxx:xxxx/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
四、子模块pom文件定义版本信息
<groupId>com.huangtc</groupId>
<artifactId>huangtc-common-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>common-core</name>
五、子模块中实现starter自定义的业务代码
六、子模块中定义配置类
@ComponentScan(basePackages = "com.huangtc.common.core.**")
@Configuration
public class CoreConfig {
}
七、子模块中resource目录下新增文件
在resource目录下,新建文件夹META-INF,
如果springboot版本是3.x.x以前,则在META-INF目录下新建spring.factories文件,内容如下
org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.huangtc.common.core.config.CoreConfig
如果springboot版本是3.x.x以后,则在META-INF目录下新建org.springframework.boot.autoconfigure.AutoConfiguration.imports文件,内容如下
com.huangtc.common.core.config.CoreConfig
八、发布starter到nexus私服
在idea中,点击右上角进入maven生命周期界面,选中子模块项目,点击depoly按钮
九、其他项目中引入starter
<dependency>
<groupId>com.huangtc</groupId>
<artifactId>huangtc-common-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>