Gradle vs Please

Need advice about which tool to choose?Ask the StackShare community!

Gradle

16.9K
9.5K
+ 1
254
Please

14
15
+ 1
4
Add tool

Gradle vs Please: What are the differences?

  1. Build Tool Type: Gradle is a build automation tool that focuses on flexibility and extensibility, allowing for customizations and diverse build scenarios, while Please is a build tool that emphasizes hermetic builds to ensure reproducibility and reliability in the build process.

  2. Language Support: Gradle supports multiple languages and platforms, making it versatile for a wide range of projects, whereas Please is primarily designed for building software written in languages like Python, Java, Go, and C++.

  3. Build Cache Functionality: Gradle offers a sophisticated build cache system that can significantly speed up build times by reusing outputs from previous builds, while Please also integrates a build cache mechanism but focuses more on ensuring reproducibility and avoiding caching non-hermetic dependencies.

  4. Dependency Management: Gradle has a powerful dependency management system that can handle complex dependencies efficiently, with support for transitive dependencies and version conflicts resolution, while Please simplifies dependency management by using build rules that explicitly define dependencies and provide clear visibility into the dependency graph.

  5. Community Support: Gradle has a large and active community with extensive documentation, plugins, and support resources available, making it easier to find solutions and leverage community-contributed plugins, whereas Please is a relatively newer tool with a smaller community, resulting in fewer plugins and community resources.

  6. Integration with Bazel: Gradle can integrate with Bazel, another popular build tool, to leverage its advantages in scalability and performance for larger projects, while Please does not have direct integration with Bazel and operates as a standalone build tool.

In Summary, Gradle and Please differ in their build tool type, language support, build cache functionality, dependency management, community support, and integration with Bazel.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Gradle
Pros of Please
  • 110
    Flexibility
  • 51
    Easy to use
  • 47
    Groovy dsl
  • 22
    Slow build time
  • 10
    Crazy memory leaks
  • 8
    Fast incremental builds
  • 5
    Kotlin DSL
  • 1
    Windows Support
  • 1
    IntelliJ support
  • 1
    Multi-language
  • 1
    Built-in languages are defined in the same language
  • 1
    No single WORKSPACE file that nobody owns or understand

Sign up to add or upvote prosMake informed product decisions

Cons of Gradle
Cons of Please
  • 8
    Inactionnable documentation
  • 6
    It is just the mess of Ant++
  • 4
    Hard to decide: ten or more ways to achieve one goal
  • 2
    Bad Eclipse tooling
  • 2
    Dependency on groovy
  • 1
    No Windows support

Sign up to add or upvote consMake informed product decisions

What is Gradle?

Gradle is a build tool with a focus on build automation and support for multi-language development. If you are building, testing, publishing, and deploying software on any platform, Gradle offers a flexible model that can support the entire development lifecycle from compiling and packaging code to publishing web sites.

What is Please?

Please is a cross-language build system with an emphasis on high performance, extensibility and reproduceability. It supports a number of popular languages and can automate nearly any aspect of your build process.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Gradle?
What companies use Please?
See which teams inside your own company are using Gradle or Please.
Sign up for StackShare EnterpriseLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Gradle?
What tools integrate with Please?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Gradle and Please?
Apache Ant
Ant is a Java-based build tool. In theory, it is kind of like Make, without Make's wrinkles and with the full portability of pure Java code.
Jenkins
In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project.
Groovy
It is a powerful multi-faceted programming language for the JVM platform. It supports a spectrum of programming styles incorporating features from dynamic languages such as optional and duck typing, but also static compilation and static type checking at levels similar to or greater than Java through its extensible static type checker. It aims to greatly increase developer productivity with many powerful features but also a concise, familiar and easy to learn syntax.
Apache Maven
Maven allows a project to build using its project object model (POM) and a set of plugins that are shared by all projects using Maven, providing a uniform build system. Once you familiarize yourself with how one Maven project builds you automatically know how all Maven projects build saving you immense amounts of time when trying to navigate many projects.
Bazel
Bazel is a build tool that builds code quickly and reliably. It is used to build the majority of Google's software, and thus it has been designed to handle build problems present in Google's development environment.
See all alternatives