如何修补Java程序?

Jef*_*cia 8 java jar war auto-update

最近我将修复应用于Java桌面应用程序.我通过更改其中一个类中的代码,编译它并将新jar发送到生产环境来完成此操作.

我现在被问到是否可以通过复制我修复的编译类来修改生产中的jar,甚至创建一个能够仅更新修改后的文件的修补程序/脚本.

附加信息:

  1. 补丁不必在运行时应用.这意味着补丁可以作为单独的程序或活动来完成.我的旧程序不需要自动更新.
  2. 这可以通过Web应用程序(WAR文件)完成吗?

我提出的最佳答案就是这个,但它已经有2年了. 修补Java软件

我的要求很少吗?我从未见过修补Java应用程序的教程.

Ste*_*n C 7

我现在被问到是否可以通过复制我修复的编译类来修改生产中的jar,甚至创建一个能够仅更新修改后的文件的修补程序/脚本.

是.可以使用修补JAR文件jar -u.也可以以相同的方式修补WAR文件.

但我不推荐它.JAR或WAR文件应该是部署/管理的单位.如果您开始在生产服务器上修补JAR/WAR文件,则很难跟踪实际使用的位置.如果你不小心,混乱和混乱将统治.

补丁是不可避免的唯一情况是你有第三方库或你无法从源代码构建的东西,但你需要修改.但即使在这种情况下,最好在构建平台上修改JAR/WAR并部署修改后的JAR/WAR.尝试在生产平台上修补JAR,WAR或部署的Web应用程序是一个坏主意.


我的要求很少吗?

是.还有更好的方法......

我从未见过修补Java应用程序的教程.

不足为奇,因为有更好的方法......