只是想知道 Java 世界中的其他人在升级应用程序服务器或 JVM 时通常会如何重新编译他们的二进制文件?真的有必要吗?谢谢!
更新:只是想澄清一下。重新编译意味着重新编译与服务器上升级版本相同的JDK版本的代码。换句话说,目前我们的代码是用 JDK 1.5 编译的,我们的服务器是 JVM 1.5。如果我们将服务器升级到 JVM 1.6,用 JDK 1.6 重新编译代码是否有意义?
只是想知道 Java 世界中的其他人在升级应用程序服务器或 JVM 时通常会如何重新编译他们的二进制文件?真的有必要吗?谢谢!
更新:只是想澄清一下。重新编译意味着重新编译与服务器上升级版本相同的JDK版本的代码。换句话说,目前我们的代码是用 JDK 1.5 编译的,我们的服务器是 JVM 1.5。如果我们将服务器升级到 JVM 1.6,用 JDK 1.6 重新编译代码是否有意义?
“不”是基本答案。
将部署应用程序的应用程序服务器或 JVM 不会对字节码产生编译时影响。因此,重新编译应该生成完全相同的字节码。因此重新编译不能做任何有用的事情。
当然,如果您使用的 Java 或应用服务器 API 发生了变化,您不仅需要重新编译,而且首先要相应地更改您的代码!
你不必。
但我愿意。随着应用程序服务器的更改,您通常会交换您的开发环境。有时您也会升级其他一些工具。为了确保我仍然能够进行更改,我将重新编译项目并检查我的新开发环境是否正常工作。
如果您更改 JVM,通常是必须的。如果您从 Linux 更改为 Windows,甚至从 Solaris 或 AIX 等系统更改,我将特别确保其正常工作。如果您从 IBM JDK 切换到 Oracle,我也会检查所有内容,但这更多的是测试而不是编译。