我有一个使用camel-bindy转换数据的camel-route。 我正在使用功能来定义所有需要捆绑的路由以便在我的pom中使用camel-bindy的依赖。
我在Fabric中创建了一个容器,并添加了父级为“feature-camel”的自定义配置文件。我在这个配置文件中添加了camel-bindy功能和我自己的功能(如果我不添加camel-bindy esplicity,我会获得相同的结果。)
容器尝试启动camel路由但失败了,这是错误:
由于未解析的依赖关系,无法为bundle customBundle启动蓝图容器[(&(dataformat = bindy)(objectClass = org.apache.camel.spi.DataFormatResolver))]
这是我在错误发生前几分钟在日志中找到的内容:
使用{attribute.parents = mytria-demouno,fabric.zookeeper.pid = io.fabric8.agent,feature.camel-bindy = camel-bindy,feature.camel-blueprint = camel-blueprint,feature.camel更新DeploymentAgent -core = camel-core,feature.esercizio1-feature / 2.0.0 = esercizio1-feature / 2.0.0,feature.fabric-agent = fabric-agent,feature.fabric-camel = fabric-camel,feature.fabric-core = fabric-core,feature.fabric-git = fabric-git,feature.fabric-git-server = fabric-git-server,feature.fabric-jaas = fabric-jaas,feature.fabric-rest = fabric-rest ..
如果我查看容器的hawtio控制台的捆绑页面,我可以看到已经部署了camel-bindy并且具有预期的版本。
这是功能文件:
<?xml version="1.0" encoding="UTF-8"?>
<features name="esercizio1-feature_repository">
<feature name="esercizio1-feature" version="2.0.0">
<feature>camel-blueprint</feature>
<feature dependency="true">camel-bindy</feature>
<feature>camel-sql</feature>
<feature>spring-jdbc</feature>
<feature>camel-cxf</feature>
<bundle dependency='true'>mvn:it.demo/mysql-fragment/2.0.0</bundle>
<bundle>mvn:mysql/mysql-connector-java/5.1.32</bundle>
<bundle>mvn:it.demo/esercizio1/2.0.0</bundle>
</feature>
</features>
我也尝试更改配置文件的父级并将fuse-full,但没有任何更改......任何建议?
答案 0 :(得分:0)
已解决!如果有人需要,请发布解决方案。
felix maven bundle插件中有一个愚蠢的错误。
必须:
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<version>2.5.3</version>
我有2.3.7,可能是Fuse 6.1的好选。