Загрузить определения процессов из нескольких модулей в камунде - PullRequest
2 голосов
/ 07 марта 2019

Я пытаюсь настроить автоматическое развертывание ресурсов Camunda для многомодульного проекта. Что я хочу заархивировать, так это для следующей структуры проекта:

\---learnCamunda
|   pom.xml
+---application
|   |   pom.xml
|   +---src
|       \---main
|           +---java
|           |   \---com
|           |       \---camunda
|           |            \---learnCamunda
|           |               |   LearnCamundaApplication.java
|           |               \---configuration
|           |                       CustomOracleDialect.java
|           |                       FlywayConfiguration.java
|           |                       H2ConsoleConfiguration.java                 
|           \---resources
|               |   application.properties
|               |   
|               \---processes
|                       loanRequest.bpmn                      
+---contract-management
   |   pom.xml 
   \---src
      \---main
          +---java
          |   \---com
          |       \---camunda
          |           \---learnCamunda
          |               +---dto
          |               +---dts
          |               +---entity
          |               \---enums
          \---resources
              \---processes
                      DUMMY_PROCESS.bpmn

, где application и contract management являются модулями проекта learnCamunda, я хочу, чтобы мой application.properties предоставил classpath для сканирования ресурсов Camunda, чтобы получить как loanRequest.bpmn, так и DUMMY_PROCESS.bpmn. Это возможно через application.properties в модуле приложения? (Модуль приложения зависит от модуля управления контрактами)

Если это возможно, то какое свойство камунды - установить и на что?

Я уже пробовал разные комбинации deployment-resource-pattern, но ни одна из них не сработала.

EDIT: Одна вещь, которую я заметил, это то, что PathMatchingResourcePatternResolver.findAllClassPathResources загружает все ресурсы из цели, моя скомпилированная модель находится в target.classes.processes, а ресурс classpath из resolver равен target.classes, поэтому кажется, что это не сделано рекурсивно, но у меня нет времени для подтверждения этого

1 Ответ

1 голос
/ 08 марта 2019

Вы правы, рассматривая свойство deployment-resource-pattern как место для начала.По умолчанию он включает classpath*:**/*.bpmn, поэтому ваш файл должен быть загружен.

Это говорит о том, что проблема в том, что либо значение deployment-resource-pattern было изменено, либо jar управления контрактом отсутствует в пути к классам.

Я предлагаю вам попробовать отладку приложения, чтобы проверить значениеcamunda.deployment-resource-pattern.Затем посмотрите на процесс сборки и убедитесь, что ваше приложение зависит от управления контрактами, его версия одинакова, и родительский pom создает их оба.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...