我是否需要显式插入spring-core模块?

时间:2019-03-22 09:26:58

标签: java spring maven spring-mvc pom.xml

我实现了spring-webmvc和hibernate项目。但是我没有在pom.xml文件中包含spring-core。但是我的代码可以正常工作,并且依赖项注入也可以正常工作。

我的怀疑是  1. spring-webmvc和spring-orm如何在没有spring-core的情况下工作?  2.我应该在项目中导入spring-core以避免将来出现问题吗?

这是我的依赖项(pom.xml)

<dependencies>
    <!-- Spring MVC Dependency -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-webmvc</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- Spring ORM -->
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-orm</artifactId>
        <version>${spring.version}</version>
    </dependency>
    <!-- Hibernate Core -->
    <!-- Hibernate Validator -->
    <!-- JSTL Dependency -->
    <!-- Servlet Dependency -->
    <!-- JSP Dependency -->
</dependencies>

2 个答案:

答案 0 :(得分:1)

spring-webmvc和spring-orm都依赖于spring核心,因此您不必显式添加此依赖关系。 您可以在此处检查spring-webmvc的所有依赖项: https://github.com/spring-projects/spring-framework/blob/master/spring-webmvc/spring-webmvc.gradle

和spring-orm依赖性:https://github.com/spring-projects/spring-framework/blob/master/spring-orm/spring-orm.gradle

您也可以使用  mvn dependency:tree 命令,无需查看源代码即可检查所有依赖项

答案 1 :(得分:1)

spring-webmvc以及spring-orm(以及几乎所有其他spring-XYZ模块)都依赖于spring-core,因此它是作为传递依赖项加载的。在此处查看所有依赖项:https://mvnrepository.com/artifact/org.springframework/spring-webmvc/5.1.5.RELEASE