Maven项目中间件依赖项升级

问题描述 投票:0回答:1

我有一个使用以下架构的项目:

MIDDLEWARE

应用

自定义应用程序

构建环境利用了maven-overlay。该应用程序包含对中间件依赖项的引用,因此在构建应用程序时,这些依赖项将安装到我的Maven存储库中。接下来,在构建自定义应用程序时,我将应用程序作为依赖项引用-我的自定义项被覆盖在Application类的顶部。创建的最终产品是在构建定制应用程序之后部署在Tomcat Web服务器上的war文件。

整个项目变得很老-中间件是在2011/2012年开发的,因此它使用的是...的过时版本...一切!

中间件和应用程序使用的是旧版本的Spring(3.1.0),最初是使用JDK 6开发的。几年前,我移至JDK7。但是,最近,我尝试使用JDK11构建和部署定制的应用程序-但运行了涉及各种问题,因此我将精力回落到JDK8;但是,即使使用JDK8,也存在问题。特别是,它与Lamba表达式和我当前版本的Spring(3.1.0)不知道如何处理的其他一些细微差别有关。话虽如此-解决方案是更新中间件使用的Spring版本,以便整个项目可以使用JDK8(用于TLS1.2,更强的安全性等)

问题:如何更新中间件中的依赖关系?我查看了中间件源代码(因此,如有必要,我可以访问源代码),并且在项目的主POM中看到了这种依赖关系:

  <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>3.1.0.RELEASE</version>
  </dependency>

再次-我需要将该版本更新为4.0.0.M1,以解决我的问题,但是鉴于上述构建环境,我不确定如何执行此操作,在该环境中,APPLICATION引入了中间件依赖关系(反过来又是那个旧的春季版本中的版本。]

谢谢。

spring maven java-8 overlay
1个回答
0
投票

因此,长话短说,为了影响中间件所管理的依赖性,我需要将中间件升级到可以解决我的JDK问题的适当版本,但同时还要与我的Jive应用程序的体系结构(例如,我不能像我想要的那样自动采用最新的中间件版本,因此我尽可能采用了最高版本,并在大量工作后解决了这两个问题。

最终使用了JDK8 +使用Spring 3.2.3版本的中间件版本。这个Spring版本允许目标JDK 1.7字节代码,但使用1.8 JDK进行构建。

© www.soinside.com 2019 - 2024. All rights reserved.