Skip to content
The Grails Web Application Framework
Java Groovy CSS HTML Shell Python
Latest commit cac951a Jun 28, 2016 @graemerocher graemerocher fix failing test
Failed to load latest commit information.
buildSrc/src/main/groovy package POM files into GRAILS_HOME/lib Jun 6, 2014
gradle Use Gradle 2.14 Jun 28, 2016
grails-async Merge branch '3.1.x' May 26, 2016
grails-bom Merge branch '3.1.x' Jun 28, 2016
grails-bootstrap Merge branch '3.1.x' May 27, 2016
grails-codecs move failing test Dec 14, 2015
grails-compat Delete deprecated classes and the tests that test those classes Jun 9, 2016
grails-console fixes #9522 - grails console: No Session found for current thread Jan 13, 2016
grails-core fix failing test Jun 28, 2016
grails-databinding Merge branch '3.1.x' Jun 28, 2016
grails-dependencies remove filters dependency Jan 24, 2016
grails-docs Merge branch '3.0.x' into 3.1.x Feb 25, 2016
grails-encoder Merge pull request #9533 from DevFactory/staging/Conditions-should-no… Jan 22, 2016
grails-gradle-model Profiles - profile repository support / read profiles from Maven repos Oct 3, 2015
grails-gradle-plugin Merge branch '3.1.x' Jun 28, 2016
grails-gsp Merge branch '3.1.x' Jun 28, 2016
grails-logging Update LoggingTransformer AST to use SLF4J Mar 24, 2016
grails-plugin-async Use Spring AsyncManager in startAsync to ensure correct handling of a… Apr 11, 2016
grails-plugin-codecs Make 'grails-codecs' a runtime dependency to ensure it gets added to … Jan 27, 2016
grails-plugin-controllers Horrible hack to workaround Tomcat bug. Fixes #9024 Jun 27, 2016
grails-plugin-converters Revert "Fix test for Grails 3.0.x json format" Apr 14, 2016
grails-plugin-databinding Added README.md files Jul 18, 2015
grails-plugin-datasource Rework loading of Metadata. Fixes #9375 Nov 26, 2015
grails-plugin-domain-class fix compilation error Jun 28, 2016
grails-plugin-events Fix failing test Jun 28, 2016
grails-plugin-gsp Merge branch '3.1.x' May 26, 2016
grails-plugin-i18n i18n message bundle reloading in fixes in multi project builds Feb 2, 2016
grails-plugin-interceptors Master (#9969) May 30, 2016
grails-plugin-mimetypes fix failing tests Jan 13, 2016
grails-plugin-rest Merge branch '3.1.x' Jun 28, 2016
grails-plugin-services Switching default for transactions in service to require static trans… Mar 9, 2016
grails-plugin-testing Merge branch '3.1.x' Jun 28, 2016
grails-plugin-url-mappings resource tag not resolving correctly - Fixes #9584 Jan 27, 2016
grails-plugin-validation Fix ambiguous method overloading problem Mar 15, 2016
grails-shell Allow creating plugins with the "plugin" profile only. Fixes #9988 Jun 27, 2016
grails-spring Merge branch '3.1.x' May 26, 2016
grails-taglib Ensure pre-compiled GSPs honor settings in application.yml. Fixes #9956 May 26, 2016
grails-test-suite-base Delete deprecated classes and the tests that test those classes Jun 9, 2016
grails-test-suite-persistence Delete deprecated classes and the tests that test those classes Jun 9, 2016
grails-test-suite-uber Delete deprecated classes and the tests that test those classes Jun 9, 2016
grails-test-suite-web Delete deprecated classes and the tests that test those classes Jun 9, 2016
grails-test Fixing squid:S1118 - Utility classes should not have public constructors Jan 2, 2016
grails-validation Remove references to deprecated classes Jun 27, 2016
grails-web-boot Plugins - use a source level annotation to provide compiler hint. Fixes May 17, 2016
grails-web-common Support for relative URIs on JBoss. Fixes #9821 May 26, 2016
grails-web-databinding Merge branch '3.1.x' Mar 1, 2016
grails-web-fileupload The word Subproject isn't adding anything here Jul 18, 2015
grails-web-gsp-taglib Make forceEncoding configurable Sep 3, 2015
grails-web-gsp Ensure pre-compiled GSPs honor settings in application.yml. Fixes #9956 May 26, 2016
grails-web-jsp Added README.md files Jul 18, 2015
grails-web-mvc Fix boolean logic Mar 16, 2016
grails-web-sitemesh Merge branch '3.1.x' Mar 1, 2016
grails-web-taglib Merge pull request #9533 from DevFactory/staging/Conditions-should-no… Jan 22, 2016
grails-web-url-mappings Merge branch '3.1.x' Jun 28, 2016
grails-web Delete deprecated classes and the tests that test those classes Jun 9, 2016
media vector logos Sep 3, 2014
travis Build matrix to speed up CI build process (#9979) Jun 7, 2016
.gitignore remove references to dsl-support directory May 20, 2014
.springBeans ignoring test temporarily, as due to infrastructure issues it is not … Jun 19, 2012
.travis.yml Build matrix to speed up CI build process (#9979) Jun 7, 2016
INSTALL ignoring test temporarily, as due to infrastructure issues it is not … Jun 19, 2012
ISSUE_TEMPLATE.md Refer to Stack Overflow or Slack Apr 26, 2016
LICENSE Update ant to 1.9.4 Apr 8, 2015
NOTICE update LICENSE and README Sep 9, 2013
README.md Release Grails 3.1.0.RC2 Jan 21, 2016
build.gradle Merge branch '3.1.x' Jun 28, 2016
gradle.properties ignoring test temporarily, as due to infrastructure issues it is not … Jun 19, 2012
gradlew Upgrade to Gradle 2.13 May 10, 2016
gradlew.bat Upgrade to Gradle 2.13 May 10, 2016
pubring.gpg.enc Travis publishing test take 2 Mar 10, 2015
secring.gpg.enc Travis publish take 3 Mar 9, 2015
settings.gradle remove filters support Dec 28, 2015
settings.xml.enc Travis publishing test take 2 Mar 10, 2015
travis-after-failure.sh Merge branch '2.5.x' Nov 29, 2014
travis-build.sh Build matrix to speed up CI build process (#9979) Jun 7, 2016
travis-publish-archives.sh Build matrix to speed up CI build process (#9979) Jun 7, 2016
trigger-dependent-build.sh Build matrix to speed up CI build process (#9979) Jun 7, 2016

README.md

Waffle.IO Board

  • Stories in Acknowledged
  • Stories in Progress

Build Status

  • Build Status

Slack Signup

  • Slack Signup

Grails

Grails is a framework used to build web applications with the Groovy programming language. The core framework is very extensible and there are numerous plugins available that provide easy integration of add-on features.

Grails is sponsored by Object Computing Inc. in St. Louis Missouri. Please contact info@ociweb.com for support inquiries.

Getting Started

You need a Java Development Kit (JDK) installed, but it is not necessary to install Groovy because it's bundled with the Grails distribution.

To install Grails, visit http://grails.org/Download and download the version you would like to use. Set a GRAILS_HOME environment variable to point to the root of the extracted download and add GRAILS_HOME/bin to your executable PATH. Then in a shell, type the following:

grails create-app sampleapp
cd sampleapp
grails run-app

To build Grails, clone this GitHub repository and execute the install Gradle target:

git clone https://github.com/grails/grails-core.git
cd grails-core
./gradlew install

If you encounter out of memory errors when trying to run the install target, try adjusting Gradle build settings. For example:

export GRADLE_OPTS="-Xmx2G -Xms2G -XX:NewSize=512m -XX:MaxNewSize=512m -XX:MaxPermSize=1G"

Performing a Release

Releases of Grails are automated by Travis CI.

To create a release perform the following steps.

First check that the tests are passing and all is well on Travis.

Next, update the Grails version in build.gradle and grails-core/src/test/groovy/grails/util/GrailsUtilTests.java and then push the changes to git:

$ git add build.gradle grails-core/src/test/groovy/grails/util/GrailsUtilTests.java
$ git commit -m "Release Grails 3.0.1"
$ git tag v3.0.1
$ git push --tags
$ git push

By tagging the release Travis will perform all the necessary steps to release a new version of Grails, just wait for the build to complete.

The Travis CI build will automatically upload the tagged release to Github and be available on the Releases page.

License

Grails and Groovy are licensed under the terms of the Apache License, Version 2.0.


YourKit is kindly supporting Grails open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of innovative and intelligent tools for profiling Java and .NET applications. Take a look at YourKit's leading software products: YourKit Java Profiler and YourKit .NET Profiler.

Something went wrong with that request. Please try again.