为插件[资源:1.1.6]配置动态方法时出错:无法获取属性'pluginPath'

时间:2012-08-21 09:46:26

标签: apache tomcat grails grails-plugin

使用grails 1.3.7我可以从我的STS编译和运行我的项目没有问题。 在打包WAR并尝试将其从apache tomcat中删除之后,会出现下面列出的错误。之前没有出现过这个问题,我之前以同样的方式成功将其部署到apache tomcat。 (使用apache-tomcat-7.0.26)。

关于错误: 在BootstrapResources.run(BootstrapResources.groovy:23)第23行指向:

def twitterbootstrapPlugin = applicationContext.pluginManager.getGrailsPlugin('twitter-bootstrap')

第23行 - > twitterbootstrapPluginDir = applicationContext.getResource(twitterbootstrapPlugin.pluginPath).file

ERROR [pool-2-thread-1] (DefaultGrailsPluginManager.java:818) - Error configuring dynamic methods for plugin [resources:1.1.6]: Cannot get property 'pluginPath' on null object java.lang.NullPointerException: Cannot get property 'pluginPath' on null object
    at BootstrapResources.run(BootstrapResources.groovy:23)
    at org.grails.plugin.resource.module.ModuleDeclarationsFactory$_getModuleDeclarations_closure2.doCall(ModuleDeclarationsFactory.groovy:43)
    at org.grails.plugin.resource.module.ModuleDeclarationsFactory.getModuleDeclarations(ModuleDeclarationsFactory.groovy:38)
    at org.grails.plugin.resource.module.ModuleDeclarationsFactory.getModuleDeclarations(ModuleDeclarationsFactory.groovy)
    at org.grails.plugin.resource.module.ModuleDeclarationsFactory$getModuleDeclarations.call(Unknown Source)
    at org.grails.plugin.resource.ResourceProcessor.loadModules(ResourceProcessor.groovy:720)
    at org.grails.plugin.resource.ResourceProcessor.this$2$loadModules(ResourceProcessor.groovy)
    at org.grails.plugin.resource.ResourceProcessor$this$2$loadModules.callCurrent(Unknown Source)
    at org.grails.plugin.resource.ResourceProcessor.reloadAll(ResourceProcessor.groovy:1056)
    at org.grails.plugin.resource.ResourceProcessor$reloadAll.call(Unknown Source)
    at ResourcesGrailsPlugin$_closure3.doCall(ResourcesGrailsPlugin.groovy:172)
    at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
    at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
    at java.util.concurrent.FutureTask.run(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)

该项目的最新成员是spring-security-core,但我不知道这可能是一个问题。

任何人都有任何想法?

1 个答案:

答案 0 :(得分:-1)

这可能不是解决此问题的通用解决方案,但对于我的项目,这是我的maven包装问题,不包括成功部署所需的所有插件。

由于某些原因,我在BuildConfig.groovy文件中定义了我的插件,如下所示:

plugins{
    build ':whateverplugin:0.1'
    compile ':whateverplugin:0.1'
    runtime ':whateverplugin:0.1'
    test ':whateverplugin:0.1'
}

在打包发出命令的项目时,插件未包含在war包装中: mvn包-Dmaven.skip.test = true