Maven
snapshot
maven的依赖管理是基于版本管理的,在maven2之后,把版本管理细化snapshot 快照仓库和release发布仓库。release版本,对于发布状态的artifact(就是被依赖的jar包),如果版本号相同,即使我们内部的镜像服务器上的组件比本地新,maven也不会主动下载的。由此引入snapshot.
如果你也在开发这个core.jar,你依赖于本地,而服务器上别人有也相同版本号的core.jar定期放在服务器上,这样,本地的jar经?;岜焕醋苑衿靼姹靖哺嵌贾麓砦?。
总结:我们在开发阶段,可以将公用库的版本设置为快照版本,而被依赖组件则引用快照版本进行开发,在公用库的快照版本更新后,我们也不需要修改pom版本号来下载新的版本,直接mvn执行相关编译、打包命令即可重新下载最新的快照库了,从而保证了开发进度和质量。
POM
<dependency>
<groupId>com.creditease.ipolicy</groupId>
<artifactId>ipolicy-util</artifactId>
<scope>system</scope>
<version>1.0.0</version>
<type>jar</type>
<systemPath>${project.basedir}/../ipolicy-util/target/ipolicy-util.jar</systemPath>
</dependency>