Compilation 如果升级应用服务器或JVM,是否重新编译java代码?

Compilation 如果升级应用服务器或JVM,是否重新编译java代码?,compilation,upgrade,java,recompile,Compilation,Upgrade,Java,Recompile,只是想知道Java世界中的其他人在升级应用程序服务器或JVM时通常如何重新编译二进制文件?真的有必要吗?谢谢 更新:我只是想澄清一下。重新编译意味着使用与服务器上升级版本相同的JDK版本重新编译代码。换句话说,目前我们的代码是用JDK1.5编译的,我们的服务器是JVM1.5。如果我们将服务器升级到JVM1.6,使用JDK1.6重新编译代码有意义吗?基本答案是“否” 应用程序将部署到的应用程序服务器或JVM不能对字节码产生编译时影响。因此,重新编译应该生成完全相同的字节码。因此,重新编译不能做任何

只是想知道Java世界中的其他人在升级应用程序服务器或JVM时通常如何重新编译二进制文件?真的有必要吗?谢谢

更新:我只是想澄清一下。重新编译意味着使用与服务器上升级版本相同的JDK版本重新编译代码。换句话说,目前我们的代码是用JDK1.5编译的,我们的服务器是JVM1.5。如果我们将服务器升级到JVM1.6,使用JDK1.6重新编译代码有意义吗?

基本答案是“否”

应用程序将部署到的应用程序服务器或JVM不能对字节码产生编译时影响。因此,重新编译应该生成完全相同的字节码。因此,重新编译不能做任何有用的事情

当然,如果您使用的Java或app server API发生了更改,那么您不仅需要重新编译,还需要先相应地更改代码

你不必这么做

但我会的。随着应用服务器的变化,您通常会交换您的开发环境。有时您也会升级一些其他工具。为了确保我仍然能够进行更改,我将重新编译项目并检查我的新开发环境是否正常工作

如果您更改JVM,这通常是必须的。如果您从Linux切换到Windows,甚至从Solaris或AIX等系统切换,我会特别确保其正常工作。如果您从IBMJDK切换到Oracle,我也会检查所有内容,但这更多的是测试问题,而不是编译问题