Не можете определить, почему фрагмент кода smallrye/camel не компилируется: нет метода подписчика в объектном контексте camel context?

В документации smallrye (из https://smallrye.io/smallrye-reactive-messaging/) приводится пример фрагмента кода, который у меня возникают при компиляции...

т.е.

10.4. Using Camel Route in @Incoming method
Here is an example of method annotated with @Incoming directly using a Camel route:

[...]

@Inject
private CamelContext camel;  <<==

@Inject
private CamelReactiveStreamsService camel_reactive;

[...]

@Incoming("camel")
public Subscriber<String> sink() {
  return camel.subscriber("file:./target?fileName=values.txt&fileExist=append", String.class);
}

- Кажется, что объект "верблюд" - то есть, как в "camel.subscriber" (см. Выше) - не имеет связанного с ним метода "подписчик" (?).

Ошибка компиляции выглядит так...

cannot find symbol
  symbol:   method subscriber(java.lang.String,java.lang.Class<java.lang.String>)
  location: variable camel of type org.apache.camel.CamelContext

Я включил следующие зависимости в свой Maven pom.xml (сначала только первый, а затем добавил вторую в отчаянной попытке заставить этот примерный фрагмент работать - тоже попробовал версию 1.0.8)

<!-- camel support -->
<dependency>
  <groupId>io.smallrye.reactive</groupId>
  <artifactId>smallrye-reactive-messaging-camel</artifactId>
  <version>1.0.7</version>
</dependency>   

<!-- ampq -->  
<dependency>
  <groupId>io.smallrye.reactive</groupId>
  <artifactId>smallrye-reactive-messaging-amqp</artifactId>
  <version>1.0.7</version>
</dependency>        

Вы надеялись, что кто-то, разбирающийся в реактивном обмене сообщениями camel и / или smallrye, обнаружит проблему, которая вызывает ошибку компиляции?

Спасибо!

1 ответ

Что ж, будучи новичком в smallrye и т. Д., Я стал жертвой дословного перевода документации. Но, похоже, "camel.subscriber" был ошибкой редактирования в документации. Должно было быть написано: "camel_reactive.subscriber".

Компилирует сейчас.

Другие вопросы по тегам