как применить патч-файлы в wso2 carbon

Может ли кто-нибудь выполнить шаги, которые необходимо выполнить, чтобы применить файлы .patch к WSO2 ESB v4.0.3? Я пробовал следующее:

  1. Загрузите .patch файл в repository/components/patches и carbon_home/lib/patches

  2. Беги wso2server.sh start -DapplyPatches

Эта команда создает каталог с именем patch000 в каталоге компонентов/патчей и заполняет его плагинами.

Патч, который я хочу применить, это https://issues.apache.org/jira/browse/TRANSPORTS-51

Большое спасибо


person ourweehome    schedule 03.07.2012    source источник


Ответы (4)


Вам нужно применить файл .patch к базе кода и создать из него jar(s). Затем создайте папку с именем патча (например, patch001), поместите внутрь банку(ы) и скопируйте только что созданную папку патча (например, patch001) в репозиторий/компоненты/патчи. Теперь запуск wso2server.sh -DapplyPatches будет работать.

когда вы выполняете -DapplyPatches, он создает резервную копию исходного содержимого каталога репозитория/компонентов/плагинов в каталоге репозитория/компонентов/патчей, поэтому вы видите папку patch000 (следовательно, возможен возврат к предыдущему состоянию).

person Thilini Ishaka    schedule 03.07.2012
comment
Я должен применить патч к ESB-4.6.0. Исходник доступен для скачивания? И есть какой-то учебник, объясняющий, как создать банку? Спасибо. - person elias; 14.03.2014

Начиная с Carbon 4.2.0, вам не нужно указывать параметр -DapplyPatches, чтобы применить патч. Когда сервер запускается, он автоматически обнаруживает и применяет новые исправления. Это можно проверить из репозитория лог-файлов/logs/patches.log.

person Sajith    schedule 23.01.2014

Официальный патч WSO2,

  1. Прочитайте файл readme (не обязательный шаг, лучше, если вы это сделаете)

  2. Выключите сервер, если вы уже запустили его.

  3. Скопируйте файл wso2carbon-version.txt в /bin (не обязательный шаг, лучше, если вы это сделаете)

  4. Скопируйте patchNumber в /repository/components/patches/

  5. Перезапустите сервер с помощью: Linux/Unix: sh wso2server.sh Windows: wso2server.bat

Исправление, созданное вами

Скомпилируйте (mvn clean install) и получите банку из измененной базы кода. например, допустим, вы создаете патч для углеродного реестра расширения. Сначала клонируйте углеродный реестр и внесите исправления, а затем перейдите в модуль расширений. Используя maven build(mvn clean install) банку. Затем создайте папку с названием патча (например, patch9999), поместите внутрь банку(ы) и скопируйте только что созданную папку патча (например, patch9999) в repository/components/patches. Теперь просто перезапустите/запустите продукт, и исправление будет применено.

./wso2server.sh restart/start

Однако, если продукт старше Carbon 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.
person tk_    schedule 28.10.2014
comment
Очень хороший первый пункт! Потому что есть патчи, которые надо ставить вручную - описано потом в файле ридми! - person FiveO; 15.06.2015

Как говорит Саджит, мы добавили -DapplyPatches в качестве параметра JVM по умолчанию в файл wso2server.sh.

person Harsha    schedule 27.11.2014