0

我已经使用 Delivery Pipeline 在 Bluemix 中设置了一个构建作业。不幸的是,由于 IBM Java 问题,我的一些使用 Mockito 的单元测试失败了。我从构建日志中得到的消息:

Early IBM virtual machine are known to have issues with Mockito, please upgrade to an up-to-date version.

Java               : 1.8
JVM vendor name    : IBM Corporation
JVM vendor version : 2.8
JVM name           : IBM J9 VM
JVM version        : pxa6480ifx-20150313_01 (IV70681 IV70681)
JVM info           : JRE 1.8.0 Linux amd64-64 Compressed References 20150116_231420 (JIT enabled, AOT enabled)
J9VM - R28_Java8_GA_20150116_2030_B231420
JIT  - tr.r14.java_20150109_82886.02
GC   - R28_Java8_GA_20150116_2030_B231420_CMPRSS
J9CL - 20150116_231420
OS name            : Linux
OS version         : 4.4.0-77-generic

用于运行作业的脚本是:

# enable Java 8
export JAVA_HOME=$JAVA8_HOME
mvn install

在我的本地环境中,我使用 IBM Java 8 SR4 FP5 成功运行单元测试。

有没有办法为 Bluemix DevOps 使用不同版本的 IBM Java 8?就我而言,我需要升级它。

4

3 回答 3

1

管道中包含的 java 版本将在未来 2 周的某个时间增加到 8.0-4.6。在那之前,我会尝试https://stackoverflow.com/a/44654434/713646

编辑:更改已部署并且应该可用。

于 2017-06-20T13:41:28.540 回答
1

支持更改使用的 Java 版本,但我不知道您要查找的版本是否可用。有关详细信息,请参阅:

https://console.bluemix.net/docs/runtimes/liberty/customizingJRE.html

于 2017-06-20T13:27:53.990 回答
0

这里有一种无答案:你不需要在这里“切换”任何东西。

请注意该行:

J9VM - R28_Java8_GA_20150116_2030_B231420

此版本的 IBM Java严重过时。

没有人应该在过时的软件版本上运行任何工作负载。

所以,真正的答案在这里:求助于 Bluemix 支持并礼貌地告诉他们修复他们的产品。

含义:这种“平台即服务”的用户没有责任解决过时的软件版本。平台维护者有责任这样做。

换句话说:当然,您可能更容易找到解决此问题的方法;但你不应该这样做。使提供者履行职责;而不是允许他继续这种行为。

于 2017-06-20T13:35:04.683 回答