有时,当我们对我们的网络应用程序进行小的更改时,例如错误修复后,我们不会每次都构建一个全新的 WAR 文件,而只是替换 WEB-INF/classes
下展开的 Web 应用程序目录中受影响的类文件,然后重新启动应用程序。
可以吗?
最佳答案
我想说这可能不是最佳实践,因为版本控制:您如何知道您部署了哪个版本的应用程序?如果您部署一个 .war 文件,您的构建过程可以负责更新构建编号(从源代码管理,或单独地,无论什么 - 只要每个构建都有不同的编号就可以了)。
如果您正在使用持续集成(这绝对是一个好主意),那么每次您对源代码进行更改时,您的构建过程都应该踢出一个“工件”(war 文件)。也可能用内部版本号标记版本控制中的代码。
因此,当您部署 Web 应用程序时,您可以确切地知道正在运行的版本以及构成该版本的源代码。
通过更新单个 .class 文件进行小的增量更改我认为除了本地开发人员测试之外,这可能不是一个好主意。
关于java - 是否可以通过仅替换单个类文件来更新 Java Web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/221373/