google-java-format
Google Java スタイルに準拠するように Java ソース コードを再フォーマットするプログラムです。
フォーマッタをダウンロードし、次のように実行します。
java -jar /path/to/google-java-format-${GJF_VERSION?}-all-deps.jar <options> [files...]
フォーマッタは、ファイル全体、限られた行 ( --lines
)、特定のオフセット ( --offset
)、標準出力 (デフォルト) または変更されたインプレース ( --replace
) に渡すことができます。
特定のパッチで変更された行を再フォーマットするには、 google-java-format-diff.py
を使用します。
注:フォーマッタのフォーマット用アルゴリズムについては構成可能ではありません。これは、コードのフォーマットを単一のフォーマットに統一するための意図的な設計上の決定です。
google-java 形式の IntelliJ プラグインは、プラグイン リポジトリから入手できます。これをインストールするには、IDE の設定に移動し、 Plugins
カテゴリを選択します。 Marketplace
プレイス」タブをクリックし、 google-java-format
プラグインを検索して、 Install
ボタンをクリックします。
プラグインはデフォルトでは無効になっています。有効にするには、プロジェクト設定を開き、[google-java-format 設定] をクリックして、[google-java-format を有効にする] チェックボックスをオンにします。
新しいプロジェクトでデフォルトで有効にするには、新しいプロジェクトのデフォルト設定を開き、「その他の設定/google-java-format 設定」で設定します。
有効にすると、通常のReformat Code
およびOptimize Imports
アクションが置き換えられます。
google-java-format プラグインは、追加の構成を行わないと使用できないいくつかの内部クラスを使用します。プラグインを使用するには、IDE の Java ランタイムにいくつかのオプションを追加する必要があります。これを行うには、 Help→Edit Custom VM Options...
に移動し、次の行を貼り付けます。
--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
それが完了したら、IDE を再起動します。
google-java-format
Eclipse プラグインの最新バージョンは、リリース ページからダウンロードできます。これを Eclipse ドロップイン フォルダーにドロップして、プラグインを有効にします。
このプラグインはWindow > Preferences > Java > Code Style > Formatter > Formatter Implementation
で構成できるgoogle-java-format
フォーマッタ実装を追加します。
フォーマッタは、Java を生成するソフトウェアで使用して、より読みやすい Java コードを出力できます。 maven/gradle/などにライブラリを含めるだけです。構成。
google-java-format
Java ソースを解析するために内部 javac API を使用します。 JEP 396: デフォルトで JDK 内部を強力にカプセル化するため、JDK 16 以降で実行する場合は次の JVM フラグが必要です。
--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
< dependency >
< groupId >com.google.googlejavaformat</ groupId >
< artifactId >google-java-format</ artifactId >
< version >${google-java-format.version}</ version >
</ dependency >
dependencies {
implementation ' com.google.googlejavaformat:google-java-format:$googleJavaFormatVersion '
}
その後、 formatSource
メソッドを通じてフォーマッタを使用できるようになります。例えば
String formattedSource = new Formatter (). formatSource ( sourceString );
または
CharSource source = ...
CharSink output = ...
new Formatter (). formatSource ( source , output );
開始点はcom.google.googlejavaformat.java.Formatter
のインスタンス メソッドである必要があります。
mvn install
詳細については、寄稿者ガイドをご覧ください。
Copyright 2015 Google Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not
use this file except in compliance with the License. You may obtain a copy of
the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
License for the specific language governing permissions and limitations under
the License.