Ошибка развертывания Geronimo: недопустимый файл JAR

#jakarta-ee #deployment #geronimo

#jakarta-ee #развертывание #geronimo

Вопрос:

У нас есть приложение на основе Geronimo, которое работает нормально. Мы пытаемся автоматизировать установку / развертывание, и вот где я застрял: развертывание ресурсов JMS в Geronimo 2.2.

Создание ресурсов (подключение к очереди и теме) из консоли Geronimo работает нормально, но я не могу добиться того же, используя инструмент развертывания CLI.

Я использую консоль для настройки ресурса и нажимаю «Показать план» вместо «Развернуть«. Я сохраняю план в queue-topic-plan.xml (ссылка) и выполняю следующую команду, как описано в консоли:

 java -jar bin/deployer.jar --user x --password y --verbose deploy 
  queue-topic-plan.xml 
  repository/org/apache/geronimo/modules/geronimo-activemq-ra/2.2/geronimo-activemq-ra-2.2.rar
  

Сбой развертывания:

  ERROR [DeployTool] Error:
org.apache.geronimo.common.DeploymentException: Invalid JAR file queue-topic-plan.xml
        at org.apache.geronimo.deployment.cli.CommandDistribute.execute(CommandDistribute.java:97)
        at org.apache.geronimo.deployment.cli.DeployTool.execute(DeployTool.java:168)
        ...
  

ЧЕРТ ВОЗЬМИ! Это XML-файл, а не JAR. JAR не задействован. И он копируется прямо с консоли.
Кроме того, документы противоречат друг другу в отношении порядка аргументов файла плана (XML) и модуля (rar-файл). Я пробовал оба и получаю ту же ошибку.

TIA для того, чтобы пролить некоторый свет. Черт возьми, я новичок в Java / J2EE.

Ответ №1:

Я не могу поверить, что мы в 2011 году, и я трачу так много времени на такую глупую проблему:-(

В отличие от того, что указано в примере команды deploy в консоли Geronimo, путь к файлу .rar не должен быть относительным.

Использовать :

 $GERONIMO_HOME/repository/.../geronimo-activemq-ra-2.2.rar
  

вместо:

 repository/.../geronimo-activemq-ra-2.2.rar
  

Даже если вы запустите команду из $GERONIMO_HOME