繁体   English   中英

是否可以将ConcurrentHashmap计算与java 7源代码级别一起使用?

[英]Is it possible to use ConcurrentHashmap compute with java 7 source level?

我们有一个使用gwt 2.6的旧项目,因此我们需要使用-source 1.7选项进行编译。

使用的JRE和JDK是1.8,但使用1.7源代码选项进行编译。

我们想要使用ConcurrentHashMap中的新计算函数 ,它只能从java 8中获得。当使用eclipse和maven时,一切编译得很好。 另一方面,IntelliJ正在抱怨。 我的问题是,它会起作用还是我们会遇到问题?

这个项目会运行吗?

在谷歌搜索ConcurrentHashmap计算,java 8和源代码级别1.7没有提供任何信息。

如果有的话,这将需要大量仔细的“手动”工作。

例如,当您查看这个问题时 ,您会发现人们想要如何使用Java 7启用“基于流”的函数式编程有各种不同的想法。也许,经过大量的研究,您可能能够找到类似的东西关于这种“增强的收藏”功能。

但是,所有这些都可能非常脆弱 一些示例可能正常工作的事实并不意味着您将能够在Java 7 VM上运行大型生产代码库。

因此,更多的答案在这里:小心如何投入时间和精力。 而不是尝试将库反向移植到Java 7,而是考虑将整个项目移动到Java8上。 特别要记住的是,Java的发布节奏已经发生了很大的变化,与几年前相比,使用过时的Java版本已经不那么令人满意了。

嗯,简单的答案是它不起作用。 目标运行时将没有更新的API(即, compute***方法将不在Java 7的Map版本上)。

因此,如果部署该代码,运行时将理解类版本,但会引发NoSuchMethodError和类似错误。

除此之外,升级运行时有很多原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM