Grails Build System

Get Started. It's Free
or sign up with your email address
Rocket clouds
Grails Build System by Mind Map: Grails Build System

1. GrailsStarter

1.1. groovy-start.conf

1.2. very small for classloading issues

1.3. GrailsBootLoader

2. GrailsScriptRunner

2.1. Create BuildSettings

2.2. Populate root loader

2.3. Initialise Gant

2.3.1. Pre-populate Gant binding

2.4. Interactive mode

3. GrailsStarter

4. Gant

5. GrailsBuildHelper

6. BuildSettings

6.1. Gets properties for the project structure

6.2. BuildConfig.groovy

6.3. Dependencies

6.3.1. Runtime dependencies

6.3.2. Compile dependencies

7. Grails classloaders

7.1. System loader

7.1.1. Loads JDK stuff

7.2. GrailsRootLoader

7.2.1. "rootLoader"

7.2.2. Script cache

7.2.3. Resources

7.2.4. JARs (application & plugins)

7.3. URLClassLoader

7.3.1. "classLoader"

7.3.2. Script cache

7.3.3. Classes

7.4. GrailsClassLoader

7.4.1. grailsApp.classLoader

7.4.2. Artifacts (*.groovy)

7.5. ContextClassLoader

7.5.1. Thread.getContextClassLoader

8. Grails Scripts

8.1. _GrailsSettings

8.1.1. General settings

8.1.2. Create PluginBuildSettings

8.1.3. Configure environment

8.1.4. getPropertyValue()

8.2. _GrailsClasspath

8.2.1. Dependencies

8.2.1.1. Compile

8.2.1.2. Provided

8.2.1.3. Runtime

8.3. _GrailsEvents

8.3.1. Ant build listener

8.3.2. Load event scripts

8.3.3. Add event() method

8.3.3.1. start and end event

8.4. _GrailsBootstrap

8.4.1. Grails Spring application

8.4.2. GrailsApplication

8.4.3. GrailsPluginManager

8.5. _GrailsRun

8.5.1. Grails app with servlet container

8.5.2. Should use runtime classpath

8.5.3. Plugin change scanner

8.6. _GrailsWar

8.6.1. Package runtime dependencies

8.6.2. Makes the WAR file

9. Plugins

9.1. Plugins in the Build

9.1.1. Scripts

9.1.1.1. _PluginDependencies

9.1.1.2. _GrailsPlugins

9.1.1.3. _GrailsPluginDev

9.1.2. Classes

9.1.2.1. PluginInfo

9.1.2.2. PluginBuildSettings

9.1.2.3. GrailsPluginUtils

9.1.3. Files

9.1.3.1. plugin.xml

9.1.3.2. dependencies.groovy

9.1.3.2.1. has dependency dsl

9.2. Plugins at Runtime

9.2.1. GrailsPluginManager

9.2.1.1. GrailsPlugin

9.2.2. AbstractGrilsPluginManager

9.2.2.1. AbstractGrailsPlugin

9.2.3. DefaultGrailsPluginManager

9.2.3.1. DefaultGrailsPlugin

9.2.3.1.1. Plugin descriptor

9.2.3.1.2. *GrailsPlugin

9.3. However....

9.3.1. _PluginDependencies (loadPlugins target)

9.3.1.1. Called by bootstrap, package app

9.3.1.2. Required to generate web.xml

9.3.1.3. Creates temp GrailsApplication and GrailsPluginManager instances

10. The Application(Petclinic)

10.1. GrailsWebRequestFilter

10.1.1. Creates GrailsWebRequest

10.1.1.1. Stores info about current request in threadlocal

10.2. UrlMappingsFilter

10.3. GrailsDispatcherServlet

10.3.1. GrailsOpenSessionInViewInterceptor