如何安装阿帕奇骆驼?
How to install Apache Camel?
如何安装 Apache-Camel?
我刚刚开始阅读 'Camel in Action' 第二版。
在 1.2.1 节中,建议下载二进制分发版。
我从发布页面找到了这个 link:
Release 2.24.1
但是我只能看到源代码下载。
我试图从源代码编译,但总是遇到错误。
您如何在 Ubuntu/Redhat/Fedora 上安装二进制文件?
或者我是否将 Apache-Camel 误解为您可以安装的库?
一定要用maven编译吗?
您真正需要的是下载 Apache Camel 的二进制文件。获得它们的最佳方法是利用 maven (https://maven.apache.org/install.html) 和 GitHub 的现有项目并开始使用。
您可以前往以下link:https://github.com/dilipsundarraj1/TeachApacheCamel。您可以将项目下载为 zip 文件或克隆项目(您需要在计算机上安装 git
)。
下载/克隆项目后,使用转到其中一个项目:learncamel-simple-file 并在命令提示符 中打开文件夹。
在命令提示符 运行命令mvn dependency:resolve
。 (我假设你的机器上安装了 maven 和 java)。此命令将在文件夹中下载所有必需的二进制文件:c:\user\<userid>\.m2\repository
,其中用户 ID 特定于您的计算机。
希望对您有所帮助。
驼色,Java-projects 和 build-tools
Apache Camel 与任何其他 Java 库或框架一样工作,这意味着为了使用该框架,您必须将其 java 二进制文件(即 .jar 文件)包含到您的项目中作为依赖项。现在为了让事情变得更简单,大多数开发人员使用 Maven 或 Gradle 来创建、管理和构建他们的 java 项目。
从这两个中我会推荐 Maven 因为它似乎是 Camel 开发人员的首选选项,大多数示例(包括官方 camel 站点中的示例)都在使用它。按照官方 how to install maven 指南安装 maven。
Maven 原型
要创建示例 camel 项目,您可以使用 maven 原型,它们基本上是可用于创建各种类型的新项目的项目模板。 如果您正在阅读 Camel in Action,您最好在项目中使用 Java 开发工具包版本 8 的 Camel 版本 2.x.x。 Camel 3.x.x 非常相似,因此在使用 2.x.x.
学习基础知识后应该很容易学习
安装 maven 后,您可以使用 Java IDE(即 IntelliJ、VSCode、Eclipse 或 Netbeans)从具有 groupId 的 maven 原型创建项目: org.apache.camel.archetypes artifactId: camel-archetype-java and version: 2.25.4
或者使用maven命令行命令:
# Create new camel java project for Camel version 2.25.4
mvn archetype:generate -DarchetypeGroupId="org.apache.camel.archetypes" -DarchetypeArtifactId=camel-archetype-java -DarchetypeVersion="2.25.4"
骆驼项目
新项目应包含项目文件 pom.xml,您可以在其中指定项目的所有依赖项。 camel-archetype-java 应该在 pom.xml 的依赖项部分列出以下依赖项。
<dependencies>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-core</artifactId>
</dependency>
<!-- logging -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<scope>runtime</scope>
</dependency>
<!-- testing -->
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
camel-archetype-java 原型 Myroutebuilder.java 中的示例路线对于初学者来说相当复杂。 Hello world on a timer 通常是一种更简单的测试,用于查看事情是否正常。
package com.example;
import org.apache.camel.LoggingLevel;
import org.apache.camel.builder.RouteBuilder;
public class MyRouteBuilder extends RouteBuilder {
public void configure() {
// from("file:src/data?noop=true")
// .choice()
// .when(xpath("/person/city = 'London'"))
// .log("UK message")
// .to("file:target/messages/uk")
// .otherwise()
// .log("Other message")
// .to("file:target/messages/others");
from("timer:timerName?period=3000")
.routeId("helloWorldTimer")
.log(LoggingLevel.INFO, "Hello world");
}
}
从 archetype 生成的项目带有 exec-maven-plugin,它允许您 运行 带有 mvn exec:java
的项目
Java 开发包 - JDK
如果您使用 JDK 11 而不是 JDK 8,则必须稍微修改 maven-compiler-plugin 配置。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<!--
<source>1.8</source>
<target>1.8</target>
-->
<source>11</source>
<target>11</target>
</configuration>
</plugin>
如果您安装了 JDK 的多个版本,则必须配置 IDE 以便为项目使用正确的版本。使用 IntelliJ,您可以配置 project structure settings.
项目使用的 JDK
使用 VSCode 你需要 JDK 11 和 JDK 8 因为 VSCode Java 扩展需要 JDK 11 到 运行.
OpenJDK 的示例 settings.json 条目:
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "C:\Program Files\AdoptOpenJDK\jdk-11.x.x.xxx-hotspot",
"default": true
},
{
"name": "JavaSE-1.8",
"path": "C:\Program Files\RedHat\java-1.8.0-openjdk-1.8.0.xxx-x",
}
],
"java.home": "C:\Program Files\AdoptOpenJDK\jdk-11.x.x.xxx-hotspot"
您可能还想设置路径变量,以便 java -version returns 来自 command-line.
的正确版本
如何安装 Apache-Camel?
我刚刚开始阅读 'Camel in Action' 第二版。 在 1.2.1 节中,建议下载二进制分发版。 我从发布页面找到了这个 link: Release 2.24.1 但是我只能看到源代码下载。 我试图从源代码编译,但总是遇到错误。 您如何在 Ubuntu/Redhat/Fedora 上安装二进制文件? 或者我是否将 Apache-Camel 误解为您可以安装的库? 一定要用maven编译吗?
您真正需要的是下载 Apache Camel 的二进制文件。获得它们的最佳方法是利用 maven (https://maven.apache.org/install.html) 和 GitHub 的现有项目并开始使用。
您可以前往以下link:https://github.com/dilipsundarraj1/TeachApacheCamel。您可以将项目下载为 zip 文件或克隆项目(您需要在计算机上安装 git
)。
下载/克隆项目后,使用转到其中一个项目:learncamel-simple-file 并在命令提示符 中打开文件夹。
在命令提示符 运行命令mvn dependency:resolve
。 (我假设你的机器上安装了 maven 和 java)。此命令将在文件夹中下载所有必需的二进制文件:c:\user\<userid>\.m2\repository
,其中用户 ID 特定于您的计算机。
希望对您有所帮助。
驼色,Java-projects 和 build-tools
Apache Camel 与任何其他 Java 库或框架一样工作,这意味着为了使用该框架,您必须将其 java 二进制文件(即 .jar 文件)包含到您的项目中作为依赖项。现在为了让事情变得更简单,大多数开发人员使用 Maven 或 Gradle 来创建、管理和构建他们的 java 项目。
从这两个中我会推荐 Maven 因为它似乎是 Camel 开发人员的首选选项,大多数示例(包括官方 camel 站点中的示例)都在使用它。按照官方 how to install maven 指南安装 maven。
Maven 原型
要创建示例 camel 项目,您可以使用 maven 原型,它们基本上是可用于创建各种类型的新项目的项目模板。 如果您正在阅读 Camel in Action,您最好在项目中使用 Java 开发工具包版本 8 的 Camel 版本 2.x.x。 Camel 3.x.x 非常相似,因此在使用 2.x.x.
学习基础知识后应该很容易学习安装 maven 后,您可以使用 Java IDE(即 IntelliJ、VSCode、Eclipse 或 Netbeans)从具有 groupId 的 maven 原型创建项目: org.apache.camel.archetypes artifactId: camel-archetype-java and version: 2.25.4
或者使用maven命令行命令:
# Create new camel java project for Camel version 2.25.4
mvn archetype:generate -DarchetypeGroupId="org.apache.camel.archetypes" -DarchetypeArtifactId=camel-archetype-java -DarchetypeVersion="2.25.4"
骆驼项目
新项目应包含项目文件 pom.xml,您可以在其中指定项目的所有依赖项。 camel-archetype-java 应该在 pom.xml 的依赖项部分列出以下依赖项。
<dependencies>
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-core</artifactId>
</dependency>
<!-- logging -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<scope>runtime</scope>
</dependency>
<!-- testing -->
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
camel-archetype-java 原型 Myroutebuilder.java 中的示例路线对于初学者来说相当复杂。 Hello world on a timer 通常是一种更简单的测试,用于查看事情是否正常。
package com.example;
import org.apache.camel.LoggingLevel;
import org.apache.camel.builder.RouteBuilder;
public class MyRouteBuilder extends RouteBuilder {
public void configure() {
// from("file:src/data?noop=true")
// .choice()
// .when(xpath("/person/city = 'London'"))
// .log("UK message")
// .to("file:target/messages/uk")
// .otherwise()
// .log("Other message")
// .to("file:target/messages/others");
from("timer:timerName?period=3000")
.routeId("helloWorldTimer")
.log(LoggingLevel.INFO, "Hello world");
}
}
从 archetype 生成的项目带有 exec-maven-plugin,它允许您 运行 带有 mvn exec:java
Java 开发包 - JDK
如果您使用 JDK 11 而不是 JDK 8,则必须稍微修改 maven-compiler-plugin 配置。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
<configuration>
<!--
<source>1.8</source>
<target>1.8</target>
-->
<source>11</source>
<target>11</target>
</configuration>
</plugin>
如果您安装了 JDK 的多个版本,则必须配置 IDE 以便为项目使用正确的版本。使用 IntelliJ,您可以配置 project structure settings.
项目使用的 JDK使用 VSCode 你需要 JDK 11 和 JDK 8 因为 VSCode Java 扩展需要 JDK 11 到 运行.
OpenJDK 的示例 settings.json 条目:
"java.configuration.runtimes": [
{
"name": "JavaSE-11",
"path": "C:\Program Files\AdoptOpenJDK\jdk-11.x.x.xxx-hotspot",
"default": true
},
{
"name": "JavaSE-1.8",
"path": "C:\Program Files\RedHat\java-1.8.0-openjdk-1.8.0.xxx-x",
}
],
"java.home": "C:\Program Files\AdoptOpenJDK\jdk-11.x.x.xxx-hotspot"
您可能还想设置路径变量,以便 java -version returns 来自 command-line.
的正确版本