The English version of quarkus.io is the official project site. Translated sites are community supported on a best-effort basis.

Quarkus Tools for IntelliJ 1.11.0リリース!

Quarkus Tools for IntelliJの1.11.0リリースを発表できることを大変嬉しく思います。このリリースでは、Quteテンプレートのサポートが追加され、LSP4MP 0.4.0およびquarkus-ls 0.11.1との整合性もとられています。

Quteテンプレート

QuarkusプロジェクトのクラスパスにQuteがある場合、Quteテンプレート(HTML / JSON / YAML / Text)の編集は、エディタに新機能を追加します。

ちょっと見てみましょう。

QuteテンプレートとJavaの連携

これで、どの Template 属性にも、対応する Qute テンプレートを生成するか、既存のテンプレート・ファイルに移動するかのオプションが表示されるようになりました。

quarkus tools1

対応するJavaリソースと組み合わされた全てのQuteファイルは、定義への移動、ホバー、オートコンプリートなど、多くの言語クライアント機能をサポートしています。これらの各機能については、記事でさらに詳しく説明します。

quarkus tools2

Quteテンプレートにおけるメソッドパラメータのサポート

Qute言語サーバーは、ビルトインおよびユーザー定義のJavaクラスをサポートしており、そのメソッドに対するパラメータ補完や検証を行うことができます。これを利用して、Javaに関連するミスを簡単に回避してください。

quarkus tools3

QuteテンプレートのJavaタイプホバーサポート

Java補完と検証のサポートに加え、組み込みおよびユーザー定義のJavaクラスに対するタイプホバーリングもサポートしています。

quarkus tools4

Quteセクションの補完

Quteテンプレートは、テンプレート言語のセクションを使用して、結果のドキュメントをコンパイルして表示する際に必要なロジックを実行します。これをサポートするために、エクステンションのQuteサポートは、利用可能なすべてのQuteセクションと、それらが取るパラメータ、およびそれらの使用法の小さなコードスニペットを補完リストに入力します。

quarkus tools5

Qute Validationのサポート

Quarkus Tools for IntelliJを使用したQuteテンプレートには、JavaおよびQuteのバリデーションが含まれており、診断も可能です。

quarkus tools6

Qute Value Resolversの補完

対応するJavaメソッドと対になっている組み込みのJavaクラスには、Quteテンプレートエンジンによって利用可能な組み込みのQute値リゾルバがあり、評価されて値を出力、または値に解決します。Quarkus Tools for IntelliJは、これらの組み込み値リゾルバの補完、ホバー、およびスニペット生成をサポートしています。

quarkus tools7

TemplateExtension メソッドのサポート

テンプレートエクステンションメソッドは、データオブジェクトのアクセス可能なプロパティのセットを拡張するために使用されます。Quarkus Tools for IntelliJ の Qute サポートでは、マークされた @TemplateExtension Java メソッドをサポートしており、指定されたデータモデルを拡張することができます。

quarkus tools8

QuteテンプレートへのBeanの直接注入のサポート

QuteテンプレートへのBeanの直接注入のサポート

@Named でアノテーションされた CDI Bean は、cdi および/または inject 名前空間を通じて、任意のテンプレートで参照することができます。Quarkus Tools for IntelliJは、Beanの補完と定義ナビゲーションのサポートを提供します。

quarkus tools9

改善された機能

新しいQuteのサポートに加えて、MicroProfile 2.0とQuarkus 2.xの新機能を中心に既存の機能を改善しました。

設定の全貌

これまでにも、プロパティのプレフィックスによる設定プロファイルをサポートしていましたが(例: %dev.name )、今回、プロファイルを意識したファイルもサポートするようになりました。MicroProfile 2.0 のリリースでは、この他にも多くの機能をサポートするようになりました。

quarkus tools10

MicroProfile Fault Tolerance

We’ve added basic validation support for @Bulkhead, @Timeout, @Asynchronous, and @Scheduled annotations.

quarkus tools11

Application Path support

When launching a Quarkus application, the code lens URL endpoints now supports @ApplicationPath and will take its value into account.

quarkus tools12

この例では、 @ApplicationPath/api に設定されており、メソッド宣言上のコード(下記)はそれを考慮して URL を生成しています。

quarkus tools13

Completions

結局のところ、誰もが、よくわからない設定を追い求める時間を減らし、ロジックの開発に時間をかけたいと思うものなのです。

If you’re using the @CacheResult annotation on a method in your Java sources, we automatically suggest the settings available to configure it from your configuration file. It’s also fairly reactive to changes so you’ll always know if something has gone wrong.

quarkus tools14

@ConfigMapping is now also supported with some basic validation as well as completion for the application properties.

quarkus tools15

今後に向けて

ご質問、ご意見、ご感想などがありましたら、ぜひ イシューを開いてください。

お読みいただきありがとうございました。次のリリースをお待ちください!