我正在关注Spring文档Using Spring Boot without the parent POM。在我的父POM中,我在spring-boot-dependencies
部分中dependenciesManagement
定义了导入依赖项。在我的孩子POM中,我然后定义了对spring-boot-starter-jersey
的依赖,而没有指定任何版本。当我查看依赖:树时,我发现所有的球衣依赖关系都使用spring-boot-dependencies
中指定的版本。一切都很好。
现在,在我的孩子POM中,我需要添加另一个球衣依赖。在spring-boot-dependencies
POM中,我看到定义了属性jersey.version
。但是,当我在我的子POM中使用${jersey.version}
时,属性未定义。
为什么{0}在儿童POM中无法使用?
父POM代码段:
${jersey.version}
Child POM代码段:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>1.5.0.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
来自<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jersey</artifactId>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-sse</artifactId>
<version>${jersey.version}</version> <!-- error here -->
</dependency>
</dependencies>
:
spring-boot-dependencies-1.5.0.RELEASE.pom
答案 0 :(得分:0)
属性仅从父POM继承。这在maven文档中有说明(遗憾的是我再也找不到参考文献了)。