我有一个基于spring-webmvc的Web应用程序。它使用了我的项目中使用的弹簧版本不支持的org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer
。
我的项目的Spring依赖关系看起来像这样:
我想将所有Spring依赖项从3.1.1升级到4.1.2。怎么做?
答案 0 :(得分:4)
您应该从pom.xml中弹出版本的硬编码版本移动到属性,例如
在您的房产内
<springframework.version>4.0.2.RELEASE</springframework.version>
在你的依赖项中
<!-- spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springframework.version}</version>
</dependency>
<!-- spring security -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>${springframework.security.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>${springframework.security.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${springframework.security.version}</version>
</dependency>
使用此设置很容易迁移版本,列出的代码只是复制/粘贴,不要理所当然,使用您需要的
答案 1 :(得分:3)
您可以全局更新依赖关系:
<properties>
<spring.version>4.1.2.RELEASE</spring.version>
</properties>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
使用此全局依赖关系版本管理,您可以避免使用某些version compatibility exception
。
答案 2 :(得分:2)
由于您使用的是Maven,因此您的pom依赖项可能看起来像
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.1.1.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.1.1.RELEASE</version>
</dependency>
...
你可以用$ {spring-version}替换“3.1.1.RELEASE”,并将以下内容添加到你的pom文件中
<properties>
<spring-version>4.1.2</spring-version>
</properties>
它可以更轻松地更改所有弹簧依赖项的版本
答案 3 :(得分:1)
如果您使用maven构建工具,那么将spring 3升级到spring 4非常简单,只需在属性xml标记中打开pom.xml文件,只需将版本3.x.x更改为4。 e.g:
<org.springframework-version>3.0.2.RELEASE</org.springframework-version>
到
<org.springframework-version>4.0.2.RELEASE</org.springframework-version>