Apache Grails is a framework used to build web applications with the Apache Groovy programming language. Releases prior to 7.0.0 were outside of the Apache Software Foundation. The core framework is very extensible and there are numerous plugins available that provide easy integration of add-on features. To assist in getting started, various Application generators exist and are provided by the Apache Grails team.
- Check the Documentation for your preferred Apache Grails version.
- Check for a Grails Guide.
- Ask questions on the Grails User Mailing List
- Submit an issue: Grails Issues
- Join the discussions on Slack
Please note that the Apache Software Foundation does not offer commercial support for Apache Grails or related applications.
Commercial support options are available. The products and services listed at this link are provided for information use only to our users. The Apache Grails Project does not endorse or recommend any of the products or services.
The only requirement for Apache Grails is the Java Development Kit (JDK). Once a JDK is installed there are many ways to get started. The preferred way to get started is to use Grails Forge. Alternatively, offline CLI applications exist to assist in Application generation. Instructions for them follow.
The Apache Grails Wrapper is a tiny distribution (25KB) that can manage larger sized CLIs for Grails. It consists of a
grailsw
shell script, a grailsw.bat
batch script, and the jar file grails-wrapper.jar
. It can be downloaded from
the latest Github Release page starting with 7.0.0-M4 & it is included
in any created project. The wrapper is used to either create an Apache Grails Application or to run commands in an
existing Grails Application directory. The wrapper is generally meant to be forward compatible and downloads the Apache
Grails CLIs to the directory $HOME/.grails/wrapper
.
To create an Apache Grails Application with the wrapper follow these steps:
- Extract the wrapper to your preferred location.
- Set the environment variable
PREFERRED_GRAILS_VERSION
to the preferred version. - Run the wrapper command
grailsw -t forge create-app
to create a new Apache Grails Application.
Please note, that the wrapper supports either the legacy Apache Grails Shell
or the newer Apache Grails Forge
CLI.
For more detailed information about it, see the documentation.
For running commands, the Grails Wrapper will always pull the Apache Grails version from gradle.properties
and ignore
any environment variables. Type grailsw -t shell help
to see the available commands. For more detailed information
about it, see the documentation.
The legacy Apache Grails CLI is the command line interface that IntelliJ uses to interact with existing Apache Grails
Applications. It can be used to generate applications or it can be used to interact with existing ones. To use it,
download it to your preferred location from the grails-forge release
page. You can use the command ./grails-shell-cli help
to see what's possible.
The newer Apache Grails CLI is available from the grails-forge
release page. You can use the command ./grails-forge-cli --help
to see what's possible.
If managing multiple, local copies of the Grails CLI, it is recommended to use SDKMAN!. Assuming SDKMAN is installed, this command would install the 7.0.0-M4 version:
sdk install grails 7.0.0-M4
Apache Grails versions installed via SDKMAN! include the following commands grails
, grails-shell-cli
, &
grails-forge-cli
. The grails command simply delegates to forge or the legacy shell. For further information on SDKMAN,
please see their website.
Once your Apache Grails Application is created, you can start it with the command:
./gradlew bootRun
For further information, please consult the documentation.
For building Grails, please consult the CONTRIBUTING.md file.
Apache Grails is licensed under the Apache License, Version 2.0. For details, see the LICENSE.
See RELEASE.md.
As an independent initiative, community members have set up an open collective for Apache Grails:
https://opencollective.com/friends-of-grails
This initiative is designed to complement the Apache project and the many contributions we get from our great community and supporters.