Class JavaFile.Builder

  • Enclosing class:
    JavaFile

    public static final class JavaFile.Builder
    extends java.lang.Object
    • Field Detail

      • packageName

        private final java.lang.String packageName
      • typeSpec

        private final TypeSpec typeSpec
      • skipJavaLangImports

        private boolean skipJavaLangImports
      • indent

        private java.lang.String indent
      • staticImports

        public final java.util.Set<java.lang.String> staticImports
    • Constructor Detail

      • Builder

        private Builder​(java.lang.String packageName,
                        TypeSpec typeSpec)
    • Method Detail

      • addFileComment

        public JavaFile.Builder addFileComment​(java.lang.String format,
                                               java.lang.Object... args)
      • addStaticImport

        public JavaFile.Builder addStaticImport​(java.lang.Enum<?> constant)
      • addStaticImport

        public JavaFile.Builder addStaticImport​(java.lang.Class<?> clazz,
                                                java.lang.String... names)
      • skipJavaLangImports

        public JavaFile.Builder skipJavaLangImports​(boolean skipJavaLangImports)
        Call this to omit imports for classes in java.lang, such as java.lang.String.

        By default, JavaPoet explicitly imports types in java.lang to defend against naming conflicts. Suppose an (ill-advised) class is named com.example.String. When java.lang imports are skipped, generated code in com.example that references java.lang.String will get com.example.String instead.