IntelliJ プラットフォーム SDK プラグイン開発ガイド

ページを編集 (英語)

IntelliJプラットフォームとプラグインAPI 2019.*の注目すべき変更

2019.3

IntelliJプラットフォーム2019.3の注目すべき変更

PlatformTestCaseHeavyPlatformTestCaseに改名されました
「重いテスト」の特徴を反映しています(軽いテストと重いテストを参照)。
推移的なオプションのプラグイン依存関係のサポート
オプションの plugin.xml 構成ファイルで <depends>を指定できるようになりました: 課題(英語)
テーマ/キーマッププラグインは再起動を必要としません
テーマまたはキーマップ(英語)プラグインのインストールまたは有効化/無効化は、IDEの再起動を必要としません。
タスクを1回実行する (プロジェクトごと)
com.intellij.ide.util.RunOnceUtil を使用して、アプリケーションまたはプロジェクトごとに1回だけタスクを実行します。
プレーンテキストエディターでのシンボル補完 (VCSコミットメッセージ)
com.intellij.completion.plainTextSymbol 拡張ポイント(com.intellij.codeInsight.completion.PlainTextSymbolCompletionContributor)を介してシンボル名(クラス、メソッドなど)を提供します。
ユーザーがカスタマイズ可能な日付/時刻のフォーマット
com.intellij.util.text.JBDateFormat#getFormatter() を使用して、Settings | Appearance & Behavior | System Settings | Date Formatsから構成されたフォーマットを使用します。

IntelliJ IDEAの注目すべき変更

バンドルされていないプラグイン
積極的に維持されていない技術のためのいくつかのプラグイン(Heroku統合、RubyMotionサポート、Javaアプレットサポート)は、別のリポジトリ(英語)に移動されました。プラグインがそれらに依存している場合、ユーザーはJetBrainsプラグインリポジトリ(英語)からインストールする必要があります。

2019.2

IntelliJプラットフォーム2019.2の注目すべき変更

ファイルレベルの通知のためのクイックフィックス
他のクイックフィックスと一致して、メニューには問題の名前自体ではなく、修正の名前が表示されるようになりました: 課題(英語)
コードのHTML表現を作成する
com.intellij.openapi.editor.richcopy.HtmlSyntaxInfoUtil を使用して、Lexerベースの強調表示されたコードサンプルを作成します: ドキュメントでの使用方法
表示 | 外観 | ツリービューの説明
UIで追加の詳細を表示するように切り替えます(プロジェクトビューの変更タイムスタンプなど)。UISettings#getShowInplaceCommentsを参照してください。
エディターインレイヒントの新しいAPI
Editor |でさまざまなプレゼンテーション(カスタムペイントを含む)、マウスイベント処理、および表示設定を可能にします。インレイのヒントcom.intellij.codeInsight.hints.InlayHintsProviderを参照してください。
com.intellij.openapi.vfs.AsyncFileListener
com.intellij.openapi.vfs.newvfs.BulkFileListenerのノンブロッキング版です。
com.intellij.openapi.util.ColoredItem
すべてのツリー、リスト、およびコンボボックスの背景色を提供します。
com.intellij.openapi.startup.StartupActivity バックグラウンドバリアント
新しい専用拡張ポイント com.intellij.backgroundPostStartupActivity を使用してください( StartupActivity#BACKGROUND_POST_STARTUP_ACTIVITYについてはJavadocを参照)。
com.intellij.codeHighlighting.TextEditorHighlightingPassFactory 登録
新しい専用拡張ポイント com.intellij.highlightingPassFactoryを使用してください。
com.intellij.openapi.fileTypes.FileTypeFactory は非推奨
ファイル拡張子、パターンまたは正確なファイル名の一致を介してファイルタイプを登録するときは、代わりに拡張ポイント com.intellij.fileType を使用してください(サンプルを参照)。
@org.jetbrains.annotations.ApiStatus.NonExtendable
注釈付きのAPIクラス、インターフェース、またはメソッドは、外部プラグインによって拡張、実装、またはオーバーライドしてはならず、取得またはインスタンス化(クラスおよびインターフェースの場合)、または呼び出すこと(メソッドの場合)しかできないことを示します。
@org.jetbrains.annotations.ApiStatus.OverrideOnly
注釈付きメソッドがSPI(サービス・プロバイダー・インターフェース)の一部であることを示します。これは、実装またはオーバーライドされることのみを目的としており、外部プラグインによって呼び出されることはありません。
com.intellij.util.Query.forEach
非同期コレクションを使用しているクライアントに関する問題を防ぐため、デフォルトはスレッドセーフです。
com.intellij.openapi.projectRoots.SdkType#getInvalidHomeMessage
無効なSDKパスが選択されたときに専用メッセージを返します(たとえば、JDKではなくJRE)。

IntelliJ IDEAの注目すべき変更

プラグインとして抽出されたJava機能
プラグインがJavaに依存している場合は、今すぐ指定する必要があります。詳細はブログの投稿(英語)を参照してください。
バンドルされていないプラグイン
積極的に保守されていない技術のためのいくつかのプラグイン(J2ME、JsTestDriver、Struts 1.x)は別のリポジトリ(英語)に移動されました。プラグインがそれらに依存している場合、ユーザーはJetBrainsプラグインリポジトリ(英語)からインストールする必要があります。

2019.1

IntelliJプラットフォーム2019.1の注目すべき変更

com.intellij.testFramework.InspectionTestCase は軽いテストに変わりました
tearDown() で専用の ProjectDescriptor またはロールバックプロジェクト設定の変更を使用します(軽いテストと重いテストを参照)。
@org.jetbrains.annotations.ApiStatus.AvailableSince
IntelliJプラットフォーム用の外部注釈が自動的に生成され、プラグインプロジェクトにアタッチされます( @since Javadocに代わるもの)。
@org.jetbrains.annotations.ApiStatus.ScheduledForRemoval
IntelliJプラットフォーム用の外部注釈が自動的に生成され、プラグインプロジェクトにアタッチされます。これにより、新しいプラットフォームバージョンで削除されたAPIを強調表示できます。
@org.jetbrains.annotations.ApiStatus.Internal
注釈付き要素をパブリックAPIと見なさないでください。IntelliJプラットフォーム以外では使用しないでください。課題(英語)
PsiReferenceProvider は基礎となる要素を表明する
指定された基礎となる PsiElementに対してアサート参照が作成されます: 課題(英語)
CachedValue より厳密な主張
テストおよびEAP /内部モードで有効になっています。 CachedValueStabilityChecker (英語)Javadocを参照してください。
最終更新日: