首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在java 11项目中使用wiremock jre-8依赖关系是一个问题吗?

在java 11项目中使用wiremock jre-8依赖关系是一个问题吗?
EN

Stack Overflow用户
提问于 2022-10-31 08:17:24
回答 1查看 89关注 0票数 0

消散器

如果这是个愚蠢的问题,我事先很抱歉,但是我的研究结果并没有我想要的那么成功。

问题描述

我正在使用jdk 11进行一个项目,为了获得良好的测试覆盖率,我添加了一些东西来模拟外部服务的调用/应答。所以我包括了wiremock。就像他们在安装启动部分上建议的,我包括

代码语言:javascript
复制
testImplementation "com.github.tomakehurst:wiremock-jre8:2.34.0"

即使在我的机器上一切正常工作(并且测试在管道上运行良好),我也不知道这是否会在其他机器上引起问题。参与该项目的架构师还表示,他担心我们只使用jre 11。

因此,我需要更多的洞察力,要么改变事物,要么争论为什么这不是一个问题。

迄今为止的尝试

我原以为会有一个更高版本的威瑞克在mavencentral,但这只是两个项目:

令我惊讶的是,wiremock jre8 8是最近的版本。我不知道旧版本是用什么编译的,但我使用的注释与2020年版本都不兼容。因此,最好不要将当前的实现降级为可读性较低的解决方案。

我要提到的是,我只猜测wiremock jre8 8是从命名中用jdk8编译的。我没有找到任何关于编译器为这些依赖项生成字节码的证据,也没有找到如何解释这些依赖项的线索。

当我试图弄清楚java、编译器和生成的字节码是如何回发和转发可梳性时,我找到了这个旧员额。简而言之,它指出:

从javac的角度来看,兼容性(因为它是JDK特有的部分),这意味着生成的字节码可以在jvm的未来版本中运行(这与JRE更相关,但也绑定在JDK中)。

  • JDK(通常)是向前兼容的。
  • JRE(通常)向后兼容。

我对此有部分理解,但对我的问题并不完全理解。尤其是“通常”部分。那么,是否还有更多的洞察力需要别人来启发我?:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-31 08:41:20

他们的文档中的下载和安装部分包含了这句话:

此外,这些JAR的版本是为Java 7和Java 8+分发的。

因此,如果您仍然在运行Java1.7,则必须使用Java 7的版本。

对于所有后期版本的Java,都有用于Java8+的版本(您使用的版本)。

由于这是一个受到积极支持的项目,任何与Java 8后面版本相关的问题都将得到正确的解决和解决(例如,参见"com.github.tomakehurst:wiremock-jre8:2.32.0").中解决的构建并完全支持JDK 17 )。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74260438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档