I have an app and a plugin built with Grails 2.1.1 that i upgraded to 2.2.1 and I am running into a weird issue. My application started blowing up all over because configuration values defined in my app `Config.groovy` all of a sudden resolve to `groovy.Util.ConfigObject` instead of their actual values. This is part 1 of the problem, part 2 is that in my app, I define in my app's `Config.groovy`

```
grails.config.defaults.locations = [
    "classpath:DemoPluginConfig.groovy",
]

```

`DemoPluginConfig.groovy` contains this property

```
oo.memcached.timeout=400000

```

and the `DemoPluginConfig.groovy` file is in the `src/java` folder of my Demo plugin.
I have a memcache service where i am trying to set that timeout property once the service is ready:

```
def void afterPropertiesSet() {

        ConnectionFactoryBuilder cfb = new ConnectionFactoryBuilder()
        def config = grailsApplication.config;
        def operationTimeOut = config.oo.memcached.timeout
        cfb.setOpTimeout(timeOut)

    }

```

grails run-app blows up at this point with error:

```
Caused by MissingMethodException: No signature of method: net.spy.memcached.ConnectionFactoryBuilder.setOpTimeout() is applicable for argument types: (groovy.util.ConfigObject) values: [[:]]
Possible solutions: setOpTimeout(long)
->>   55 | unwrap                          in org.codehaus.groovy.runtime.ScriptBytecodeAdapter
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
|     46 | call                            in org.codehaus.groovy.runtime.callsite.PojoMetaClassSite
|     45 | defaultCall . . . . . . . . . . in org.codehaus.groovy.runtime.callsite.CallSiteArray
|    108 | call                            in org.codehaus.groovy.runtime.callsite.AbstractCallSite
|    116 | call . . . . . . . . . . . . .  in     ''
|     20 | afterPropertiesSet              in com.millennialmedia.ui.core.MemcachedService
|   1514 | invokeInitMethods . . . . . . . in org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
|   1452 | initializeBean                  in     ''
|    519 | doCreateBean . . . . . . . . .  in     ''
|    122 | doCreateBean                    in org.codehaus.groovy.grails.commons.spring.ReloadAwareAutowireCapableBeanFactory
|    456 | createBean . . . . . . . . . .  in org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
|    271 | resolveInnerBean                in org.springframework.beans.factory.support.BeanDefinitionValueResolver
|    126 | resolveValueIfNecessary . . . . in     ''
|   1360 | applyPropertyValues             in org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory
|   1118 | populateBean . . . . . . . . .  in     ''

```

If i try to run grails run-app a couple more time it starts up successfully but the app blows up on loading a page with another `groovy.Util.ConfigObject` is not serializable error. Step by step debugging before the app blows up shows that by the time we get to the `setOptTimeOut` line, `grailsApplication.config` only contains config options from my app's Config.groovy, as if the values from the plugin `DemoPLuginConfig.groovy` were just ignored.

Reverting back to 2.1.1 brings everything back to normal. At this point I have no idea where to look.