Bluemix DevOps是否提供不同版本的IBM Java 8?
问题描述:
我已经使用Delivery Pipeline在Bluemix中建立了一个构建作业。不幸的是,由于IBM Java问题,使用Mockito的部分单元测试失败。 我从生成日志得到的消息:Bluemix DevOps是否提供不同版本的IBM Java 8?
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运行单元测试成功。
有没有办法将不同版本的IBM Java 8用于Bluemix DevOps? 在我的情况下,我需要升级它。
答
有支持更改使用哪个Java版本,但我不知道您查找的版本是否可用。欲了解更多信息,请参见:
https://console.bluemix.net/docs/runtimes/liberty/customizingJRE.html
答
非答案在这里种-的:你不应该需要“开关”任何东西在这里。
注意行:
J9VM - R28_Java8_GA_20150116_2030_B231420
此版本的IBM Java的是严重过时。
没有人应该运行任何工作量在过时版本的软件上。
所以,真正答案在这里:转向Bluemix支持,并礼貌地告诉他们修复他们的产品。
含义:这种“平台服务”的用户不负责解决过时的软件版本。这是平台维护人员的职责。
换句话说:当然,您可能更容易找到解决此问题的解决方法;但你不应该。使提供者履行其职责;而不是让他继续这样的行为。
您提供的文档展示了如何配置用于运行应用程序的Java版本。对于构建应用程序,Delivery Pipeline具有自己的文档[此处](https://console.bluemix.net/docs/services/DeliveryPipeline/deploy_var.html#deliverypipeline_environment)。不幸的是,交付管道不提供相同的可用Java版本集。所以我最终用一种IBM Java构建我的应用程序并用不同的程序运行它。 – Veliko