【问题标题】:Errors in pom file spring versionspom 文件 spring 版本中的错误
【发布时间】:2017-09-14 21:04:12
【问题描述】:

我已经在这里上传了我的 pom 文件

https://www.dropbox.com/s/ryuetva8gintpf5/pom.xml?dl=0

我看到了很多奇怪的错误,其中一个是 Multiple ContextLoader definitions in web.xml,我想知道我的 Spring 版本是否在核心、mvc、安全等之间存在不匹配,这是导致此问题的原因。我不太了解哪个版本与什么兼容,所以如果有人可以查看我的 pom 文件并让我知道我的 pom.xml 是否存在任何兼容性问题,那就太好了。

【问题讨论】:

  • 对于初学者来说,停止混合不同 spring 版本的罐子,你正在混合 4.2.0、4.2.1、4.2.4 和 4.1.6 以及由于其他依赖项拉入不同版本而不是更多。
  • 所以我的问题是,既然最高数字是 4.2.4,我可以为我的应用程序中的所有 Spring 组件/jar 使用 4.2.4 吗?
  • 不管是哪个版本都必须使用相同的版本以避免api/class冲突...不管你用哪个版本只要你用的是单一版本。

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


【解决方案1】:

请在此处复制粘贴您的pom.xml,这样会更容易审核。

实际上,您可以使用spring initializr 来挽救您的生命来管理spring 依赖项,但是从您的pom.xml 我发现了一些错误,您使用变量初始化了依赖项版本,但我可以看到您声明了变量的名称。

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>${spring.version}</version>
</dependency>

所以,要么你在&lt;properties&gt;中定义你的变量名。

<properties>
    <spring.version>4.2.4.RELEASE</spring.version>
</properties>

或者,您可以像这样声明您的 spring 版本。

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>4.2.4.RELEASE</version>
</dependency>

我的建议是选择一种方法,为了便于维护而跟上它

【讨论】:

  • 我同意这不是最好的方法,但我不认为这是一个错误。似乎这更像是一种最佳实践或一种常见的做事方式。在任何情况下,我都希望看看我所拥有的任何东西是否真的会导致我的代码由于版本不匹配而引发任何运行时错误/异常。
猜你喜欢
  • 1970-01-01
  • 2014-10-22
  • 2013-10-02
  • 2016-07-24
  • 2015-08-02
  • 1970-01-01
  • 1970-01-01
  • 2018-03-05
  • 2017-05-25
相关资源
最近更新 更多