如何在CentOS 7中通过jenkins构建时为JRE和JDK设置正确的路径?

时间:2017-01-12 13:48:19

标签: java maven jenkins java-8 jdk1.8.0

我在我们的一台服务器上面临着jenkins构建的问题。

问题是:

[ERROR] PATH_TO_FILE/EventsServiceImpl.java:[1592,137] method references are not supported in -source 1.5

enter image description here

EventsServiceImpl.java: [1592,137]包含以下代码。

List<String> androidDevicesList = deviceIds.getDeviceIds().stream().map(Object::toString)
                                    .collect(Collectors.toList());

从问题的外观来看,它说jenkins构建需要1.5来构建代码。上面的代码需要java 8才能编译。我已经做了一切正确设置路径。我检查了服务器中的$ JAVA_HOME路径。它指向正确的JRE版本。即1.8.0_111

我还检查了我的Jenkins JDK路径,据我所知它是正确的。

enter image description here

它在我的本地系统中运行良好。我的Eclipse编译没有任何问题。但是,如果我将java编译器从1.8更改为1.7 / 1.5,则会抛出错误。

我的系统配置:

操作系统:Windows 7

JDK: 8

JRE: 1.8.0_31

服务器配置:

OS: Cent OS 7

JDK: 8

JRE: 1.8.0_111

我不知道,究竟是什么问题?这是詹金斯的问题吗?或者它是服务器中Java编译器路径的问题?或者它是服务器中Mavan的问题。

我还在服务器中运行了带有上述代码的示例java文件。我跑了没有任何问题。我能够编译代码并构建代码并查看输出。

1 个答案:

答案 0 :(得分:1)

&#34; -source 1.5&#34;表示java编译器,即使JDK 8,被告知要编译JDK 5级别的代码。鉴于发布的信息,无法确切地说出这是从哪里来的。请发布您的pom.xml文件或检查它(有关详细信息,请参阅this)以获取

  

let client = Client::new(); let mut res = client.get("https://google.com").send().unwrap();

标签。还要检查Jenkins项目配置的Build部分,确保它没有被设置为命令行选项。