Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Reformats Java source code to comply with Google Java Style.

License

NotificationsYou must be signed in to change notification settings

google/google-java-format

google-java-format is a program that reformats Java source code to comply withGoogle Java Style.

Using the formatter

From the command-line

Download the formatterand run it with:

java -jar /path/to/google-java-format-${GJF_VERSION?}-all-deps.jar <options> [files...]

Note that it uses thejdk.compiler module to parse the Java source code. Thejava binary version used must therefore be from a JDK (not JRE) with a versionequal to or newer than the Java language version of the files being formatted.The minimum Java version can be found incore/pom.xml (currently Java 17). Analternative is to use the available GraalVM based native binaries instead.

The formatter can act on whole files, on limited lines (--lines), on specificoffsets (--offset), passing through to standard-out (default) or alteredin-place (--replace).

Option--help will print full usage details; including built-in documentationabout other flags, such as--aosp,--fix-imports-only,--skip-sorting-imports,--skip-removing-unused-import,--skip-reflowing-long-strings,--skip-javadoc-formatting, or the--dry-runand--set-exit-if-changed.

Using@<filename> reads options and filenames from a file, instead ofarguments.

To reformat changed lines in a specific patch, usegoogle-java-format-diff.py.

Note:There is no configurability as to the formatter's algorithm forformatting. This is a deliberate design decision to unify our code formatting ona single format.

IntelliJ, Android Studio, and other JetBrains IDEs

Agoogle-java-format IntelliJ pluginis available from the plugin repository. To install it, go to your IDE'ssettings and select thePlugins category. Click theMarketplace tab, searchfor thegoogle-java-format plugin, and click theInstall button.

The plugin will be disabled by default. To enable,open the Project settings,then click "google-java-format Settings" and check the "Enablegoogle-java-format" checkbox.

To enable it by default in new projects,open the default settings for new projectsand configure it under "Other Settings/google-java-format Settings".

When enabled, it will replace the normalReformat Code andOptimize Importsactions.

IntelliJ JRE Config

The google-java-format plugin uses some internal classes that aren't availablewithout extra configuration. To use the plugin, you need toadd some options to your IDE's Java runtime.To do that, go toHelp→Edit Custom VM Options... and paste in these lines:

--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

Once you've done that, restart the IDE.

Eclipse

The latest version of thegoogle-java-format Eclipse plugin can be downloadedfrom thereleases page.Drop it into the Eclipsedrop-ins folderto activate the plugin.

The plugin adds agoogle-java-format formatter implementation that can beconfigured inWindow > Preferences > Java > Code Style > Formatter > Formatter Implementation.

Third-party integrations

as a library

The formatter can be used in software which generates java to output morelegible java code. Just include the library in your maven/gradle/etc.configuration.

google-java-format uses internal javac APIs for parsing Java source. Thefollowing JVM flags are required when running on JDK 16 and newer, due toJEP 396: Strongly Encapsulate JDK Internals by Default:

--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

Maven

<dependency>  <groupId>com.google.googlejavaformat</groupId>  <artifactId>google-java-format</artifactId>  <version>${google-java-format.version}</version></dependency>

Gradle

dependencies {  implementation'com.google.googlejavaformat:google-java-format:$googleJavaFormatVersion'}

You can then use the formatter through theformatSource methods. E.g.

StringformattedSource =newFormatter().formatSource(sourceString);

or

CharSourcesource = ...CharSinkoutput = ...newFormatter().formatSource(source,output);

Your starting point should be the instance methods ofcom.google.googlejavaformat.java.Formatter.

Building from source

mvn install

Contributing

Please seethe contributors guide for details.

License

Copyright 2015 Google Inc.Licensed under the Apache License, Version 2.0 (the "License"); you may notuse this file except in compliance with the License. You may obtain a copy ofthe License at    http://www.apache.org/licenses/LICENSE-2.0Unless required by applicable law or agreed to in writing, softwaredistributed under the License is distributed on an "AS IS" BASIS, WITHOUTWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See theLicense for the specific language governing permissions and limitations underthe License.

About

Reformats Java source code to comply with Google Java Style.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp