【问题标题】:Having Trouble Generating a War in Grails无法在 Grails 中引发战争
【发布时间】:2009-08-31 18:13:42
【问题描述】:

当我尝试在 Grails 中构建战争时出现以下错误。关于可能导致问题的任何想法?有关调试构建战争的 Groovy 脚本的任何提示?

[web] $ cmd.exe /C D:\dev\tools\grails-1.1\bin\grails.bat war cloudfi.war && exit %%ERRORLEVEL%% 欢迎使用 Grails 1.1 - http://grails.org/ 根据 Apache 标准许可证 2.0 获得许可 Grails home 设置为:D:\dev\tools\grails-1.1

基本目录:D:\dev\workspace.hudson\jobs\cloudfi\workspace\trunk\web 运行脚本 D:\dev\tools\grails-1.1\scripts\War.groovy 环境设置为生产 警告,目标导致名称覆盖 startLogging 无效的 java.lang.NullPointerException 在 org.codehaus.groovy.runtime.InvokerHelper.getAttribute(InvokerHelper.java:129) 在 org.codehaus.groovy.runtime.ScriptBytecodeAdapter.getField(ScriptBytecodeAdapter.java:305) 在 org.codehaus.groovy.grails.plugins.PluginInfo.getName(PluginInfo.groovy:53) ... 在 java.lang.reflect.Method.invoke(Method.java:597) 在 org.codehaus.groovy.grails.cli.support.GrailsS​​tarter.rootLoader(GrailsS​​tarter.java:187) 在 org.codehaus.groovy.grails.cli.support.GrailsS​​tarter.main(GrailsS​​tarter.java:212)

【问题讨论】:

    标签: grails groovy debugging war


    【解决方案1】:

    在构建应用程序之前尝试一次 grails clean 可能是值得的。第129行invokerHelper是:

    129  public static Object invokeStaticMethod(String klass, String methodName, Object arguments) throws ClassNotFoundException {
    130         Class type = InvokerHelper.class.forName(klass);
    131         return getInstance().invokeStaticMethod(type, methodName, arguments);
    132     }
    

    所以我怀疑您有插件或类路径问题 - 清理安装可能会有所帮助。

    【讨论】:

      【解决方案2】:

      尝试清洁 grails。如果这不起作用,请尝试删除您的应用程序 Data.grails 或其系统上的等效文件夹。我也遇到过类似的问题,删除那个文件夹总能解决问题。

      【讨论】:

        【解决方案3】:

        查看错误消息的文本,我的第一个猜测是,您在代码中的某个地方定义了一个名为“startLogging”的方法或字段,它与 Grails 正在执行的一些“魔法”发生冲突。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2022-01-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-12-22
          • 2013-09-24
          • 1970-01-01
          相关资源
          最近更新 更多