除getBaseVersion()
之外,Artifact界面提供getVersion()
。基本版本在setBaseVersionInternal(String)
中设置,如下所示:
Matcher m = VERSION_FILE_PATTERN.matcher( baseVersion );
if ( m.matches() )
{
this.baseVersion = m.group( 1 ) + "-" + SNAPSHOT_VERSION;
}
else
{
this.baseVersion = baseVersion;
}
我对两个不同版本字符串的语义一无所知。何时getBaseVersion()
的返回值实际上与getVersion()
不同,为什么?
答案 0 :(得分:1)
SNAPSHOT有两种类型:唯一和非唯一。后者以-SNAPSHOT
结束,在您自己的系统上处理项目时生成。 mvn install
会将带有-SNAPSHOT版本的工件复制到本地存储库。
如果您使用远程存储库中的SNAPSHOT,那么这些工件将加上时间戳(以人类友好的时间戳表示结束),这使它们成为唯一的。这与它们上传到远程存储库的方式有关。