`
hekuilove
  • 浏览: 156085 次
  • 性别: Icon_minigender_1
  • 来自: 魔都
社区版块
存档分类
最新评论

MAVEN发布固定版本(不需要更改pom更新依赖的方法)

阅读更多
接触Maven有几年时间了,不得不说,它是个好东西,一旦接触之后就有种爱不释手的感觉。
最近在开发中遇到一个疑问,开发阶段的依赖中往往更改一小丁点东西都需要升级版本发布,十分繁琐。

对此查了很多资料,国内的资料十分有限,看来国内还很少有朋友遇到这个问题,大家应该都是使用升级版本更新依赖的方式。

上了官网查查资料,还真有解决方案。

首先要分清楚Snapshot和Release的区别

maven中的仓库分为两种,snapshot快照仓库和release发布仓库。snapshot快照仓库用于保存开发过程中的不稳定版本,release正式仓库则是用来保存稳定的发行版本。定义一个组件/模块为快照版本,只需要在pom文件中在该模块的版本号后加上-SNAPSHOT即可(注意这里必须是大写),


<groupId>org.quinn</groupId>
	<artifactId>accounts</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>


修改setting.xml的发布部分如下设置

<profile>
			<id>dev</id>

			<repositories>

				<repository>

					<id>nexus</id>

					<url>http://ip:8081/nexus/content/groups/public</url>

					<releases>

						<enabled>true</enabled>

					</releases>

					<snapshots>

						<enabled>true</enabled>
						<updatePolicy>always</updatePolicy>
						<checksumPolicy>warn</checksumPolicy>

					</snapshots>

				</repository>

			</repositories>

			<pluginRepositories>

				<pluginRepository>

					<id>nexus</id>

					<url>http://ip:8081/nexus/content/groups/public</url>

					<releases>

						<enabled>true</enabled>

					</releases>

					<snapshots>

						<enabled>true</enabled>
						<updatePolicy>always</updatePolicy>
						<checksumPolicy>warn</checksumPolicy>

					</snapshots>

				</pluginRepository>

			</pluginRepositories>

		</profile>


可以看到我在snapshot下面加了如下设置

<enabled>true</enabled>
						<updatePolicy>always</updatePolicy>
						<checksumPolicy>warn</checksumPolicy>


看下maven官方对这个属性做出的解释,重点就是updatePolicy属性




enabled设置为true

updatePolicy更新snapshot包的频率,属性有四个值always(实时更新) daily(每天更新) interval:xxx(隔xxx分钟更新一次)  never(从不更新) 默认为daily

checksumPolicy为warn

如果是使用eclipse开发,集成了maven插件的,还需要做如下事情。

Window>Preferences>Maven>User Settings>Update Settings

完成以上操作可完成无需更改版本发布,依赖方也不需要更改pom,只需执行一下mvn clean install 即可完成依赖更新
  • 大小: 46.7 KB
0
0
分享到:
评论
1 楼 恋上你的味道 2014-05-15  
亏家狗V587 神功盖屎 一桶浆糊

还可以在install的时候加上 -U 参数

相关推荐

Global site tag (gtag.js) - Google Analytics