1

我有一个骆驼路线,它使用骆驼绑定来转换数据。我正在使用功能来定义工作路线所需的所有捆绑包,并且在我的 pom 中,我依赖于 camel-bindy。

我在 Fabric 中创建了一个容器并添加了一个自定义配置文件,其父项是“feature-camel”。我在这个配置文件中添加了 camel-bindy 功能和我自己的功能(注意,如果我不添加 camel-bindy esplicity,我会获得相同的结果)。

容器尝试启动骆驼路线但失败了,这是错误:

由于未解决的依赖关系,无法启动 bundle customBundle 的蓝图容器 [(&(dataformat=bindy)(objectClass=org.apache.camel.spi.DataFormatResolver))]

这是我在错误发生前几分钟在日志中发现的内容:

DeploymentAgent 更新为 {attribute.parents=mytria-demouno, fabric.zookeeper.pid=io.fabric8.agent, feature.camel-bindy=camel-bindy, feature.camel-blueprint=camel-blueprint, feature.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-核心,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>

我还尝试更改配置文件的父级并放入保险丝,但没有任何变化......有什么建议吗?

4

1 回答 1

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 的好版本。

于 2015-08-26T15:47:24.567 回答