Java 为什么我必须添加与父pom的依赖关系?
我从pom.xml中获得了以下代码:Java 为什么我必须添加与父pom的依赖关系?,java,maven,spring-boot,dependency-management,Java,Maven,Spring Boot,Dependency Management,我从pom.xml中获得了以下代码: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.3.RELEASE</version> </parent> <dependencies>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.3.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
</dependency>
</dependencies>
org.springframework.boot
spring启动程序父级
2.0.3.1发布
org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
spring引导启动器数据jpa
org.postgresql
postgresql
当我将鼠标悬停在某个依赖项上时,我会看到这样一条消息:托管版本是#someNumber,工件在org.springframework.boot:spring boot dependencies:2.0.3.RELEASE
中管理。这条消息可以吗?如果是,如果parent
已经拥有所有依赖项,为什么我必须声明我正在使用的依赖项
如果我必须声明我的依赖项,那么拥有父项
有什么好处?仅用于管理依赖项的版本?父POM(不一定)告诉您的项目包含所有这些依赖项;它说,如果您需要依赖项,请使用此版本
例如,一些Spring引导项目完全基于消息,不需要Web部件——没有MVC,没有servlet容器。在一个不需要的项目中包含所有这些内容是浪费的
有关更多信息,您可以查看。父POM(不一定)告诉您的项目包含所有这些依赖项;它说,如果您需要依赖项,请使用此版本
例如,一些Spring引导项目完全基于消息,不需要Web部件——没有MVC,没有servlet容器。在一个不需要的项目中包含所有这些内容是浪费的
有关更多信息,您可以查看