Я создал небольшой пример Apache Camel, но он не может найти класс org.apache.camel.impl.DefaultComponent
. Здесь полный журнал ошибок.
Я посмотрел класс на search.maven.org , который говорит, что он должен содержаться в org.apache.camel:camel-core
.Добавление этого не решает мою проблему.Что не так в этом примере?
Это приложение
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication app = new SpringApplication(Application.class);
app.setWebApplicationType(WebApplicationType.NONE);
app.run(args);
}
}
и здесь маршрут.
@Component
public class ZmqRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
//from("stream:in").to("stream:out");
String host = "zmq.devnet.iota.org";
from("zeromq:tcp://" + host + ":5556?socketType=SUBSCRIBE&topics=tx")
.to("stream:out")
.log("${body}");
}
}
Наконец, здесь build.gradle.kts
plugins {
java
application
id("org.springframework.boot") version "2.1.2.RELEASE"
id("io.spring.dependency-management") version "1.0.6.RELEASE"
}
repositories {
jcenter()
}
application {
mainClassName = "org.example.camel.Application"
}
java {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
tasks.withType<JavaCompile>().configureEach {
options.compilerArgs.addAll(arrayOf("-Xlint:all"))
options.encoding = "UTF-8"
}
dependencies {
val camelVersion = "3.0.0-M1"
implementation("org.springframework.boot:spring-boot-starter-web")
implementation("org.apache.camel:camel-spring-boot-starter:$camelVersion")
implementation("org.apache.camel:camel-stream-starter:$camelVersion")
//implementation("org.apache.camel:camel-core:$camelVersion")
implementation("org.apache-extras.camel-extra:camel-zeromq:2.22.0") {
exclude(module = "zeromq-scala-binding_2.10")
}
implementation("org.zeromq:jeromq:0.5.0")
testImplementation("junit:junit:4.12")
}