4.2. Quarkus 関数テンプレートの構造
Knative (kn
) CLI を使用して Quarkus 機能を作成する場合の、プロジェクトディレクトリーは通常の Maven プロジェクトに似ています。さらに、プロジェクトには、関数の設定に使用される func.yaml
ファイルが含まれています。
http
および event
トリガー関数のテンプレート構造はいずれも同じです。
テンプレート構造
. ├── func.yaml 1 ├── mvnw ├── mvnw.cmd ├── pom.xml 2 ├── README.md └── src ├── main │ ├── java │ │ └── functions │ │ ├── Function.java 3 │ │ ├── Input.java │ │ └── Output.java │ └── resources │ └── application.properties └── test └── java └── functions 4 ├── FunctionTest.java └── NativeFunctionIT.java
- 1
- イメージ名とレジストリーを判断するために使用されます。
- 2
- プロジェクトオブジェクトモデル (POM) ファイルには、依存関係に関する情報などのプロジェクト設定が含まれています。このファイルを変更して、別の依存関係を追加できます。
追加の依存関係の例
... <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13</version> <scope>test</scope> </dependency> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>3.8.0</version> <scope>test</scope> </dependency> </dependencies> ...
依存関係は、最初のコンパイル時にダウンロードされます。
- 3
- 関数プロジェクトには、
@Funq
アノテーションが付けられた Java メソッドが含まれている必要があります。このメソッドはFunction.java
クラスに配置できます。 - 4
- 関数のローカルでのテストに使用できる単純なテストケースが含まれます。