Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么maven版本插件在被告知不升级主版本时升级主版本?_Maven_Versions - Fatal编程技术网

为什么maven版本插件在被告知不升级主版本时升级主版本?

为什么maven版本插件在被告知不升级主版本时升级主版本?,maven,versions,Maven,Versions,我不知道我是否只是在maven版本插件中遇到了一个bug,或者有什么我不理解的。。。我正在使用更新pom文件中依赖项的版本,指定不允许使用-dallowmayorupdates=false进行主要更新。maven似乎根据输出选择了该特性(见下文),但我确实升级了Tomcat的主要版本(见下文) 注意:我屏蔽了项目的名称,但其余的都是逐字逐句的 C:\>mvn clean versions:use-latest-releases -DallowMajorUpdates=false [INFO

我不知道我是否只是在maven版本插件中遇到了一个bug,或者有什么我不理解的。。。我正在使用更新pom文件中依赖项的版本,指定不允许使用
-dallowmayorupdates=false
进行主要更新。maven似乎根据输出选择了该特性(见下文),但我确实升级了Tomcat的主要版本(见下文)

注意:我屏蔽了项目的名称,但其余的都是逐字逐句的

C:\>mvn clean versions:use-latest-releases -DallowMajorUpdates=false
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building XXXXXXXXXXX 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ XXXXXXXXXXX ---
[INFO]
[INFO] --- versions-maven-plugin:2.1:use-latest-releases (default-cli) @ XXXXXXXXXXX ---
[INFO] Minor version changes allowed
Props: {project.version=1.0-SNAPSHOT, project.artifactId=XXXXXXX,  project.groupId=xxx.xxx.xxxxxx}
[INFO] Updated org.apache.tomcat:servlet-api:jar:6.0.33 to version 7.0.0.RC3
[... more stuff ...]

有什么想法吗?谢谢。

我想这与servlet api(7.0.0.RC3)的版本号有关,它不是符合maven标准的版本号。Maven和版本插件期望如下所示:

<major version>.<minor version>.<incremental version>-<qualifier>
-
不匹配的版本号也会弄乱maven的版本范围。我不知道版本号插件是如何做到这一点的,但是maven将对与模式不匹配的版本号使用字符串比较,因此不知道关于主要版本和次要版本的任何信息。看

也许您可以通过使用版本插件的规则并忽略从7开始的所有版本来修复此行为(请参阅)。我从未使用过它们,因此除了文档之外,我无法提供任何帮助