我有一个使用Java7编写的旧应用程序,它在Java8JRE中运行良好。我不打算重写任何代码来利用Java 8的特性。将编译后的代码升级到最新的Java 8 JDK有什么技术优势吗?
需要明确的是,代码目前是使用Java7编译的,并且已经使用最新的Java8JRE运行。它应该已经从Java 8运行时的改进中受益了。这个问题是,使用版本8编译并使用Java8编译的字节代码运行是否会获得任何好处。
此外,我也不关心非技术方面的好处,比如开发人员的生产力。我认为这些很重要,但不是这个问题的重点。我是为了没有开发团队的生产代码而问的。它完全处于维护模式。
发布于 2017-02-03 00:43:38
如果我没理解错的话,您想知道javac
生成的字节码在Java8中是否比Java7中“更好”。
答案可能是否定的,他们不断地修复编译器中的错误,这有时会导致更有效的字节码。但据我所知,你不会从Java8的这些修复中看到任何显着的加速,changelog只列出了两个版本之间的主要变化。
甲骨文的网站很糟糕,我似乎无法在不同版本之间获得与javac
相关的错误修复列表,但here is a non exhaustive one from OpenJDK。我能找到的大多数都是修复错误的。因此,通过更新到Java8,它有可能不会再编译,因为javac
更正确地遵循了JLS,字节码将会有很少甚至没有“改进”。
https://stackoverflow.com/questions/42004363
复制相似问题