3.4 Dependency Resolution

In order to control how JAR dependencies are resolved Griffon features (since version 0.9) a dependency resolution DSL that allows you to control how dependencies for applications and plugins are resolved.

Inside the `griffon-app/conf/BuildConfig.groovy` file you can specify a `griffon.project.dependency.resolution` property that configures how dependencies are resolved:

    griffon.project.dependency.resolution = {
       // config here
    }

The default configuration looks like the following:

    griffon.project.dependency.resolution = {
        // inherit Griffon' default dependencies
        inherits("global") {
        }
        log "warn" // log level of Ivy resolver, either 'error', 'warn', 'info', 'debug' or 'verbose'
        repositories {
            griffonHome()        // uncomment the below to enable remote dependency resolution
            // from public Maven repositories
            //mavenLocal()
            //mavenCentral()
            //mavenRepo "http://snapshots.repository.codehaus.org"
            //mavenRepo "http://repository.codehaus.org"
            //mavenRepo "http://download.java.net/maven/2/"
            //mavenRepo "http://repository.jboss.com/maven2/"
        }
        dependencies {
            // specify dependencies here under either 'build', 'compile', 'runtime' or 'test' scopes eg.
            // runtime 'mysql:mysql-connector-java:5.1.5'
        }
    }

The details of the above will be explained in the next few sections.