Skip to content

hyysguyang/java-code-formatter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

How to use it

Add plugin dependent to project/plugins.sbt

resolvers += Resolver.url("hyysguyang-sbt-plugins", url("https://dl.bintray.com/hyysguyang/sbt-plugins/"))(Resolver.ivyStylePatterns)
addSbtPlugin("com.lifecosys.sbt" % "java-code-formatter" % "0.2")

This will add formatJava to your project.

The default will use the eclipse default Java Conventions format with project javacOptions source level, default is 1.8. To customize it just:

import com.lifecosys.sbt.JavaCodeFormatterPlugin.JavaCodeFormatterKeys._
val formattingSettings = List(
eclipseProfileFile in javaCodeFormatter := Some(file("docs/develop/coding-style/JavaConventions-variant.xml"))
)

You can use all configuration such as:

import com.lifecosys.sbt.JavaCodeFormatterPlugin.JavaCodeFormatterKeys._
val formattingSettings = List(
eclipseProfileFile in javaCodeFormatter := Some(file("docs/develop/coding-style/JavaConventions-variant.xml")),
eclipsePrefFile in javaCodeFormatter := Some(file("docs/develop/coding-style/JavaConventions-variant.xml")),
eclipseFormatterOptions in javaCodeFormatter :=
      """
        |org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
        |org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
        |org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
        |org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
      """.stripMargin
)

Please note that the sequence eclipseProfileFile <- eclipsePrefFile <- eclipseFormatterOptions, the later will override the previous.

How to Build it

Just checkout the source code and run sbt test to run all the test case.

License

Apache 2.0

About

A java code formatter for sbt base on eclipse coding style.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages