67.2. コンパイル
csimple 言語は、通常の Java ソースコードに解析され、他のすべてのソースコードとともにコンパイルされるか、camel-csimple-joor モジュールを介してブートストラップ中に 1 回コンパイルできます。
csimple をコンパイルするには 2 つの方法があります
-
camel-csimple-maven-pluginを使用して、ビルド時にソースコードを生成します。 -
Camel のブートストラップ中にランタイムインメモリーコンパイルを実行する
camel-csimple-joorの使用。
67.2.1. camel-csimple-maven-plugin の使用 リンクのコピーリンクがクリップボードにコピーされました!
camel-csimple-maven-plugin Maven プラグインは、ソースコードからすべての csimple スクリプトを検出するために使用されます。次に、src/generated/java フォルダーでソースコードを自動的に生成し、他のすべてのソースとともにコンパイルされます。
maven プラグインは、.java ファイルおよび .xml ファイル(Java および XML DSL)のソースコードスキャンを実行します。スキャナーは特定のコードパターンを検出するように制限され、異常な/rare 方式で使用されている場合に、一部のク単純スクリプトの検出が欠落している可能性があります。
camel-csimple-joor を使用したランタイムコンパイルには、この制限があります。
利点はすべて、通常の Java コンパイラーを使用してコンパイルされるため、すべてアプリケーション JAR ファイルの .class ファイルとして追加設定なしで含まれているため、ランタイム時に追加の依存関係は必要ありません。
camel-csimple-maven-plugin を使用するには、以下のように pom.xml ファイルに追加する必要があります。
<plugins>
<!-- generate source code for csimple languages -->
<plugin>
<groupId>org.apache.camel</groupId>
<artifactId>camel-csimple-maven-plugin</artifactId>
<version>${camel.version}</version>
<executions>
<execution>
<id>generate</id>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- include source code generated to maven sources paths -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
<goal>add-resource</goal>
</goals>
<configuration>
<sources>
<source>src/generated/java</source>
</sources>
<resources>
<resource>
<directory>src/generated/resources</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
また、生成されたソースコードがコンパイルされ、アプリケーション JAR ファイルに含まれるように、build-helper-maven-plugin Maven プラグインを追加して Java コンパイラーのソースフォルダーのリストに src/generated を含める必要もあります。
Maven プラグインを使用する Camel Examples の camel-example-csimple の例を参照してください。