Java 为什么Maven获取了错误的Jetty版本?

Java 为什么Maven获取了错误的Jetty版本?,java,maven,spring-boot,Java,Maven,Spring Boot,我使用的是spring boot,并且有以下依赖项。如果您查看jetty依赖项,我希望它获取所有带有“9.4.1.v20170120”后缀的jetty依赖项,但它获取的版本错误。我在另一个项目中使用相同的东西,它可以正确地获取它。请看图片 pom.xml条目: <properties> <java.version>1.8</java.version> <junit.version>4.11</junit.version>

我使用的是spring boot,并且有以下依赖项。如果您查看
jetty
依赖项,我希望它获取所有带有“9.4.1.v20170120”后缀的jetty依赖项,但它获取的版本错误。我在另一个项目中使用相同的东西,它可以正确地获取它。请看图片

pom.xml条目:

<properties>
    <java.version>1.8</java.version>
    <junit.version>4.11</junit.version>
</properties>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.1.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-tomcat</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jetty</artifactId>
    </dependency>
</dependencies>

1.8
4.11
org.springframework.boot


为什么会发生这种情况?

这是maven可传递依赖项解析

默认情况下,Maven使用最近的wins解决版本冲突 策略

在解决依赖关系时,如果库之间存在冲突,Maven会选择更靠近根的库。在您的例子中,它是
javax.servlet api.3.1.0.jar


请参见

也许您已经在您的父版本中定义了此版本。您是否在任何地方指定了具有版本的依赖项?我已经尝试使用与您相同的依赖项,但我没有遇到这种情况。你能试着删除所有maven repo和redownload依赖项吗?我不认为这是正在发生的事情
spring boot starter父级
包括屏幕截图中显示的所有Jetty模块的依赖关系管理,因此它们都应该具有9.4.1.v20170120版本,但其中也有一些9.3.11模块。这告诉我某些东西(父项或另一个导入的bom表)正在管理某些版本Mike..你的回答给了我方向。实际上,是来自父pom的eclipse jetty服务器依赖性导致了这个问题。我通过手动将所需的jetty版本放在dependencymanagement标记下解决了这个问题。谢谢你忍受痛苦…我感谢你