A multi-faceted language tool for the Java platform!

Groovy

Groovy

  -  59.46 MB  -  Open Source
  • Latest Version

    Groovy 5.0.3 LATEST

  • Review by

    Daniel Leblanc

  • Operating System

    Windows 7 / Windows 8 / Windows 10 / Windows 11

  • User Rating

    Click to vote
  • Author / Product

    Apache Software Foundation / External Link

  • Filename

    groovy-5.0.3.msi

  • MD5 Checksum

    dcac4b50b6616c2e60b92dbeb1db56b4

Apache Groovy is a powerful, optionally typed and dynamic language, with static-typing and static compilation capabilities, for the Java platform aimed at improving developer productivity thanks to a concise, familiar, and easy to learn syntax.

It integrates smoothly with any Java program and immediately delivers to your application powerful features, including scripting capabilities, Domain-Specific Language authoring, runtime, and compile-time meta-programming and functional programming.

Features and Highlights

Flat learning curve
Concise, readable, and expressive syntax, easy to learn for Java developers.

Smooth Java integration
Seamlessly and transparently integrates and interoperates with Java and any third-party libraries.

Vibrant and rich ecosystem
Web development, reactive applications, concurrency / asynchronous / parallelism library, test frameworks, build tools, code analysis, GUI building.

Powerful features
Closures, builders, runtime & compile-time meta-programming, functional programming, type inference, and static compilation.

Domain-Specific Languages
Flexible & malleable syntax, advanced integration & customization mechanisms, to integrate readable business rules in your applications.

Scripting and testing glue
Great for writing concise and maintainable tests, and for all your build and automation tasks.

The Groovy programming language is supported by the Apache Software Foundation and the Groovy community.

How to Use
  • Open a terminal or command prompt on your PC
  • Set up the Groovy environment variables if needed
  • Run Groovy scripts using the groovy command
  • Use the interactive shell with groovysh for quick testing
  • Integrate Groovy with Java applications if required
  • Utilize Groovy libraries for advanced scripting
  • Debug scripts using logging and exception handling
  • Explore documentation for built-in functions and syntax
System Requirements
  • OS: Windows 11 or Windows 10 (64-bit recommended)
  • Processor: Intel/AMD 1.5 GHz or faster
  • RAM: Minimum 2GB (4GB or more recommended)
  • Storage: At least 500MB free space
  • Java: JDK 8 or later required
PROS
  • Easy to learn for Java developers
  • Supports dynamic and static typing
  • Compatible with Java libraries and frameworks
  • Concise and expressive syntax
  • Strong community and documentation
CONS
  • Slower execution than pure Java
  • Requires Java runtime installation
  • Limited standalone development tools
  • Not as widely used as Java or Python
  • Can be harder to debug in complex projects


Why is this app published on FileHorse? (More info)
  • Groovy 5.0.3 Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Groovy 5.0.3 Screenshot 1

What's new in this version:

Fixed:
- super property resolution
- stack overflow in javac compiler adapter
- @Log4j2 uses Logger class from log4j-core instead of log4j-api
- Unqualified member access in empty array tap resolves incorrectly in Groovy 5
- Property shorthand not working for default methods in interfaces without @CompileStatic
- Groovy 5 doesn't handle implicit properties
- Groovy5 compiler throws exception: "org.codehaus.groovy.ast.ClassNode.getGenericsTypes()" is null
- Groovy 5: joint compilation generates stubs without imports for implemented interfaces in other packages (works in 4.x)

Dependency upgrade:
- Bump asciidoctorj-pdf to 2.3.21
- Bump jarjar to 1.16.0
- Bump spotbugs to 4.9.8
- Bump JUnit to 5.14.1
- Bump logback to 1.5.21 (test dependency)
- Bump jackson to 2.20.1
- Bump commons-cli to 1.11.0

Improved:
- Support unquoted URLs in groovysh
- Let groovysh startup time not depend on contents of CWD