Create your own awesome maps

Even on the go

with our free apps for iPhone, iPad and Android

Get Started

Already have an account?
Log In

Grails Build System by Mind Map: Grails Build System
0.0 stars - reviews range from 0 to 5

Grails Build System

GrailsStarter

groovy-start.conf

very small for classloading issues

GrailsBootLoader

GrailsScriptRunner

Create BuildSettings

Populate root loader

Initialise Gant

Pre-populate Gant binding

Interactive mode

GrailsStarter

Gant

GrailsBuildHelper

BuildSettings

Gets properties for the project structure

BuildConfig.groovy

Dependencies

Runtime dependencies

Compile dependencies

Grails classloaders

System loader

Loads JDK stuff

GrailsRootLoader

"rootLoader"

Script cache

Resources

JARs (application & plugins)

URLClassLoader

"classLoader"

Script cache

Classes

GrailsClassLoader

grailsApp.classLoader

Artifacts (*.groovy)

ContextClassLoader

Thread.getContextClassLoader

Grails Scripts

_GrailsSettings

General settings

Create PluginBuildSettings

Configure environment

getPropertyValue()

_GrailsClasspath

Dependencies, Compile, Provided, Runtime

_GrailsEvents

Ant build listener

Load event scripts

Add event() method, start and end event

_GrailsBootstrap

Grails Spring application

GrailsApplication

GrailsPluginManager

_GrailsRun

Grails app with servlet container

Should use runtime classpath

Plugin change scanner

_GrailsWar

Package runtime dependencies

Makes the WAR file

Plugins

Plugins in the Build

Scripts, _PluginDependencies, _GrailsPlugins, _GrailsPluginDev

Classes, PluginBuildSettings, GrailsPluginUtils, PluginInfo

Files, plugin.xml, dependencies.groovy, has dependency dsl

Plugins at Runtime

GrailsPluginManager, GrailsPlugin

AbstractGrilsPluginManager, AbstractGrailsPlugin

DefaultGrailsPluginManager, DefaultGrailsPlugin, Plugin descriptor, *GrailsPlugin

However....

_PluginDependencies (loadPlugins target), Called by bootstrap, package app, Required to generate web.xml, Creates temp GrailsApplication and GrailsPluginManager instances

The Application(Petclinic)

GrailsWebRequestFilter

Creates GrailsWebRequest, Stores info about current request in threadlocal

UrlMappingsFilter

GrailsDispatcherServlet

GrailsOpenSessionInViewInterceptor