如何在wso2 carbon中应用补丁文件

时间:2012-07-03 08:14:28

标签: wso2 wso2carbon

有人可以通过您需要遵循的步骤将.patch文件应用到WSO2 ESB v4.0.3吗?我尝试了以下内容:

  1. .patch文件上传到repository/components/patches和 carbon_home / LIB /补丁

  2. 运行wso2server.sh start -DapplyPatches

  3. 此命令在components / patches目录中创建一个名为patch000的目录,并用插件填充它。

    我要申请的补丁是https://issues.apache.org/jira/browse/TRANSPORTS-51

    非常感谢

4 个答案:

答案 0 :(得分:10)

您需要将.patch文件应用于代码库并从中创建jar。然后创建一个包含补丁名称的文件夹(例如:patch001)并将jar放入其中并将新创建的补丁文件夹(例如:patch001)复制到存储库/组件/补丁。 现在运行wso2server.sh -DapplyPatches将起作用。

当你执行-DapplyPatches时,它会将repository / components / plugins目录的原始内容备份到repository / components / patches目录,这就是你看到patch000文件夹的原因(因此可以恢复到以前的状态)

答案 1 :(得分:3)

从碳4.2.0开始,您无需提供-DapplyPatches选项即可应用补丁。当服务器启动时,如果有新补丁,它会自动检测并应用。 这可以从日志文件repository / logs / patches.log

中进行验证

答案 2 :(得分:3)

WSO2官方补丁,

  1. 阅读自述文件。(不是必须的步骤,如果你这样做会更好)

  2. 如果您已经开始,请关闭服务器。

  3. 将wso2carbon-version.txt文件复制到/bin。(不是必须的步骤,如果你这样做会更好)

  4. 将patchNumber复制到/ repository / components / patches /

  5. 使用以下命令重启服务器:    Linux / Unix:sh wso2server.sh    Windows:wso2server.bat

  6. 由您创建的补丁

    编译(mvn clean install)并从修改后的代码库中获取jar。例如,假设您正在为carbon-registry extensions创建补丁。首先,克隆碳注册表并进行修复,然后转到extensions模块。使用maven build(mvn clean install)jar。然后创建一个带有补丁名称的文件夹(例如:patch9999)并将jar放入其中并将新创建的补丁文件夹(例如:patch9999)复制到repository/components/patches。现在只需重启/启动产品即可应用补丁。

    ./wso2server.sh restart/start
    

    但是,如果产品比碳4.2.0旧,则必须在启动产品时提供-DapplyPatches属性,如下所示。

    ./wso2server.sh -DapplyPatches
    

    如果补丁成功应用,您可以在开头看到下面的一组行。

    [2016-08-24 20:27:25,319]  INFO {org.wso2.carbon.server.extensions.PatchInstaller} -  Patch changes detected 
    [2016-08-24 20:27:27,980]  INFO {org.wso2.carbon.server.util.PatchUtils.console} -  Backed up plugins to patch0000
    [2016-08-24 20:27:28,010]  INFO {org.wso2.carbon.server.util.PatchUtils.console} -  Patch verification started
    [2016-08-24 20:27:28,034]  INFO {org.wso2.carbon.server.util.PatchUtils.console} -  Patch verification successfully completed.
    

答案 3 :(得分:-1)

正如Sajith所说,我们在wso2server.sh文件中默认添加了-DapplyPatches作为JVM参数。