我正在尝试为多模块项目配置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
为Camunda资源扫描提供类路径以拾取loanRequest.bpmn
和DUMMY_PROCESS.bpmn
。这可能通过application.properties
在应用程序模块中实现吗? (应用程序模块依赖于合同管理模块)
如果有可能那么camunda属性 - 我应该设置它和什么?
我已经尝试了deployment-resource-pattern
的不同组合,但没有它们起作用。
编辑:有一点我注意到PathMatchingResourcePatternResolver.findAllClassPathResources
从目标加载所有资源,我编译的模型在target.classes.processes
和解析器的类路径资源是target.classes
所以它似乎没有递归,但我很难确认这
你是正确的将deployment-resource-pattern
财产作为起点。默认情况下,它将包含classpath*:**/*.bpmn
,因此应加载您的文件。
这表明问题是deployment-resource-pattern
的值已经改变或者合同管理jar不在类路径上。
我建议你尝试调试应用程序来检查camunda.deployment-resource-pattern
的值。然后看看构建过程并确保您的应用程序依赖于合同管理,它的相同版本和父pom正在构建它们。