FreeBuilder | Automatic generation of the Builder pattern for Java | Dependency Injection library

 by   inferred Java Version: v2.8.0 License: Apache-2.0

kandi X-RAY | FreeBuilder Summary

kandi X-RAY | FreeBuilder Summary

FreeBuilder is a Java library typically used in Programming Style, Dependency Injection, Framework applications. FreeBuilder has no bugs, it has no vulnerabilities, it has build file available, it has a Permissive License and it has medium support. You can download it from GitHub.

Automatic generation of the Builder pattern for Java
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              FreeBuilder has a medium active ecosystem.
              It has 803 star(s) with 107 fork(s). There are 43 watchers for this library.
              OutlinedDot
              It had no major release in the last 12 months.
              There are 46 open issues and 98 have been closed. On average issues are closed in 324 days. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of FreeBuilder is v2.8.0

            kandi-Quality Quality

              FreeBuilder has no bugs reported.

            kandi-Security Security

              FreeBuilder has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.

            kandi-License License

              FreeBuilder is licensed under the Apache-2.0 License. This license is Permissive.
              Permissive licenses have the least restrictions, and you can use them in most projects.

            kandi-Reuse Reuse

              FreeBuilder releases are available to install and integrate.
              Build file is available. You can build the component from source.
              Installation instructions, examples and code snippets are available.

            Top functions reviewed by kandi - BETA

            kandi has reviewed FreeBuilder and discovered the below as its top functions. This is intended to give you an instant insight into FreeBuilder implemented functionality, and help decide if they suit your requirements.
            • Finds a builder for the given type .
            • Returns the property names of the given method .
            • Returns a char representation of the given character sequence .
            • Generates a method body with a StringBuilder .
            • Verify that the type is valid .
            • Merges the given template and returns the defaults .
            • Adds the add method .
            • Finds a method with the given parameters .
            • Add the varargs add .
            • Adds the build method to the source builder .
            Get all kandi verified functions for this library.

            FreeBuilder Key Features

            No Key Features are available at this moment for FreeBuilder.

            FreeBuilder Examples and Code Snippets

            No Code Snippets are available at this moment for FreeBuilder.

            Community Discussions

            QUESTION

            Gradle plugin confusion/conflict with AutoValue and FreeBuilder
            Asked 2018-Jan-05 at 01:08

            I am experimenting with Gradle/IntelliJ and various Java builders/containers. However, I am unable to configure both org.inferred.FreeBuilder and com.google.auto.value.AutoValue in the same project.

            With the build.gradle file below, I am able to successfully compile a class annatoted with AutoValue, (Animal example from AutoValue documentation).

            However, as soon as I uncomment "id 'org.inferred.processors" and "processor 'org.inferred:freebuilder:1.14.6'" I get

            :processorPath \main\java\example\com\Animal.java:12: error: cannot find symbol return new AutoValue_Animal(name, numberOfLegs); ^ symbol: class AutoValue_Animal location: class Animal 1 error :compileJava FAILED

            ...

            ANSWER

            Answered 2018-Jan-05 at 00:26

            You can use both gradle dependencies in your project, but not both their gradle plugins. Neither should you need to.

            You just need one gradle plugin for annotation processor support (any of them), and then all bean processor dependencies should work.

            Source https://stackoverflow.com/questions/48099171

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install FreeBuilder

            Create your value type (e.g. Person) as an interface or abstract class, containing an abstract accessor method for each desired field. Add the @FreeBuilder annotation to your class, and it will automatically generate an implementing class and a package-visible builder API (Person_Builder), which you must subclass. For instance:. The toBuilder() method here is optional but highly recommended. You may also wish to make the builder’s constructor package-protected and manually provide instead a static builder() method on the value type (though <em>Effective Java</em> does not do this).

            Support

            If you make a mistake in your code (e.g. giving your value type a private constructor), FreeBuilder is designed to output a Builder superclass anyway, with as much of the interface intact as possible, so the only errors you see are the ones output by the annotation processor. Unfortunately, javac has a broken design: if any annotation processor outputs any error whatsoever, all generated code is discarded, and all references to that generated code are flagged as broken references. Since your Builder API is generated, that means every usage of a FreeBuilder builder becomes an error. This deluge of false errors swamps the actual error you need to find and fix. (See also [the related issue][issue 3].). If you find yourself in this situation, search the output of javac for the string "@FreeBuilder type"; nearly all errors include this in their text.
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries

            Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link