我们在Linux服务器上运行Tomcat上的Confluence。供应商明确表示它应该只使用JDK7而不是新的JDK7。鉴于过去的错误,JDK已从JDK7升级到JDK8。经过几个月的运作,这是正确的。
我的问题是:如果你使用不同的JDK运行会有什么影响?
答案 0 :(得分:0)
Java版本通常是向后兼容的:Oracle非常注意确保在旧Java版本上运行的任何Java程序也可以在较新的Java版本上运行。它通常可以在不需要对程序进行更改的情况下工作。
尽管Oracle非常谨慎,但可能存在一些小的不兼容性。每个新版本的JDK都附带了解释这些与旧版本不兼容的文档。对于JDK8,请参阅:Compatibility Guide for JDK 8。
但是,仍然可以编写在将来的Java版本上无法正常工作的Java程序,例如,当您直接使用应该是JDK内部的类时(请参阅:Why Developers Should Not Write Programs That Call 'sun' Packages)。 / p>
关于Confluence,可能的情况是供应商没有正式测试您使用Java 8的Confluence版本,所以他们不想正式保证它的工作原理并为您提供支持虽然它实际上可能根本不是问题。