Не удалось разрешить конечную точку: не найден компонент со схемой: exec - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь вызвать простой скрипт оболочки, используя Apache Camel, но получаю сообщение об ошибке:

Failed to resolve endpoint: exec:///usr/local/karaf/data/tmp/test.sh due to: No component found with scheme: exec

В моем контексте верблюда. xml У меня есть

  <route id="common_route">
    <from uri="direct:common_route" />
    <to uri="exec:/usr/local/karaf/data/tmp/test.sh"/>
  </route>

И в моем пом. xml

 <dependency>
   <groupId>org.apache.camel</groupId>
   <artifactId>camel-exec</artifactId>
   <version>${camel.version}</version>
 </dependency>

Мы используем верблюжий вариант 2.15.3. И мы используем Spring Camel. Любые идеи? Это одна из тех вещей, которые должны быть настолько простыми, что это очень расстраивает.

Кстати, нет никакой разницы, если я использую exec:/usr/.... или exec:///usr/....

Заранее спасибо.

1 Ответ

0 голосов
/ 05 февраля 2020

Я понял это. Документы не упоминают об этом ... по крайней мере, не на странице верблюда exe c.

1: Мне нужно было добавить строку org.apache.camel.component.exec к моему помпу. xml in

 <build>
        <plugins>
            <plugin>
                <groupId>org.apache.felix</groupId>
                <artifactId>maven-bundle-plugin</artifactId>
                <extensions>true</extensions>
                <configuration>
                    <instructions>
                        <Spring-Context>*;create-asynchronously:=false</Spring-Context>
                        <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
                        <Import-Package>
                          ...
                          org.apache.camel.component.exec
                          ...

2: Мне пришлось выполнить следующие команды в консоли Karaf:

bundle:install mvn:org.apache.camel/camel-exec/2.15.3
bundle:install mvn:org.apache.commons/commons-exec/1.3
bundle:install mvn:commons-io/commons-io/1.4
...