OpenRewrite を使用して検索 API 移行を特定する

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

Jira の Lucene 固有の API をインデックス非依存の検索 API に置き換える作業の一環として、非推奨の API に @com.atlassian.jira.search.annotations.DeprecatedBySearchApi の注釈が付けられました。

アプリでのこれらの非推奨 API の使用を特定しやすくする目的で、OpenRewrite レシピが開発され、OpenRewrite 検索 API レシピで提供されています。

これらのレシピは実験的な社内ツールとして開発されました。これらのツールは、アトラシアン社内での十分な成果の確認を経て、パートナーへのサービスとしてリリースされました。

発生する可能性のある問題に対しては最善に対処するよう予定されていますが、これらのレシピには公式のサポート ステータスがありません


用途

パッケージ com.atlassian.jira.openrewrite:search-api-recipes:1.0.0 にはレシピ com.atlassian.jira.search.FindDeprecatedSearchUses が含まれています。これは、OpenRewrite のドキュメントによると、複数の方法で実行できます。

最初に、pom.xml ファイルがあるディレクトリからこれを実行します。

   mvn org.openrewrite.maven:rewrite-maven-plugin:run \
      -Drewrite.recipeArtifactCoordinates=com.atlassian.jira.openrewrite:search-api-recipes:1.0.0 \
      -Drewrite.activeRecipes=com.atlassian.jira.search.FindDeprecatedSearchUses \
      -Drewrite.exportDatatables=true
レシピを実行する前に、まず最新の Jira プラットフォーム Java API にアップデートして、プロジェクトで mvn install を実行することをお勧めします。これにより、依存関係が正しく取り込まれますが、場合によっては問題が発生することもあります。

出力

@DeprecatedBySearchApi でマークされた Jira のメソッド、クラス、またはフィールドの使用が特定され、ソースに注釈としてマーカー /*~~>*/ が付けられます。次に例を示します。

/*~~>*/com.atlassian.jira.issue.index.IssueIndexManager issueIndexManager;

exportDatatables フラグを設定すると、これらの使用に関する詳細が target/rewrite/datatables ディレクトリの CSV ファイルに書き込まれます。

  • com.atlassian.jira.search.table.FieldUses.csv: @DeprecatedBySearchApi でマークされたフィールドの使用

  • org.openrewrite.java.table.MethodCalls.csv: @DeprecatedBySearchApi でマークされたメソッドの使用

  • org.openrewrite.java.table.TypeUses.csv: @DeprecatedBySearchApi でマークされたタイプの使用

トラブルシューティング

一般的な問題とトラブルシューティング ガイドについては、OpenRewrite FAQ を参照してください。

最終更新日 2025 年 4 月 8 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.