Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
&引用;groovy.lang.MissingFieldException:没有这样的字段:类的元类:java.lang.class“;Play框架中的错误_Java_Groovy_Playframework_Playframework 1.x - Fatal编程技术网

&引用;groovy.lang.MissingFieldException:没有这样的字段:类的元类:java.lang.class“;Play框架中的错误

&引用;groovy.lang.MissingFieldException:没有这样的字段:类的元类:java.lang.class“;Play框架中的错误,java,groovy,playframework,playframework-1.x,Java,Groovy,Playframework,Playframework 1.x,我们正在ubuntu CI服务器Java7上运行Play1.2.4(版本) 今天,由于没有明显的原因,我们开始在所有分支上出现这些错误,即使是那些没有提交代码并且以前的构建已经成功完成的分支 当我执行播放start然后执行curl localhost:9000时,会发生错误。我已经尝试运行了play clean和play deps--sync,并重新启动了服务器,还验证了服务器没有耗尽硬盘空间 你知道这是什么原因吗?如何调试它 2012-06-11 08:47:51,255 INFO (pla

我们正在ubuntu CI服务器Java7上运行Play1.2.4(版本)

今天,由于没有明显的原因,我们开始在所有分支上出现这些错误,即使是那些没有提交代码并且以前的构建已经成功完成的分支

当我执行
播放start
然后执行
curl localhost:9000
时,会发生错误。我已经尝试运行了
play clean
play deps--sync
,并重新启动了服务器,还验证了服务器没有耗尽硬盘空间

你知道这是什么原因吗?如何调试它

2012-06-11 08:47:51,255 INFO  (play) ~ Starting /home/ubuntu/programs/teamcity/buildAgent/work/a9561c50f06f33d5/portal/src
2012-06-11 08:47:51,259 INFO  (play) ~ Module less is available (/home/ubuntu/programs/teamcity/buildAgent/work/a9561c50f06f33d5/portal/src/modules/less-0.9)
2012-06-11 08:47:51,260 INFO  (play) ~ Module secure is available (/home/ubuntu/programs/play/play-1.2.4-mbknor-3/modules/secure)
2012-06-11 08:47:51,261 INFO  (play) ~ Module crud is available (/home/ubuntu/programs/play/play-1.2.4-mbknor-3/modules/crud)
2012-06-11 08:47:53,608 DEBUG (com.asual.lesscss.LessEngine) ~ Initializing LESS Engine.
2012-06-11 08:47:53,945 DEBUG (com.asual.lesscss.LessEngine) ~ Using implementation version: Rhino 1.7 release 3 2011 07 19
2012-06-11 08:47:55,396 WARN  (play) ~ You're running Play! in DEV mode
2012-06-11 08:47:55,716 INFO  (play) ~ Listening for HTTP on port 9000 (Waiting a first request to start) ...
2012-06-11 08:48:04,566 ERROR (play) ~

@6ajlb3agi
Internal Server Error (500) for request GET /

Oops: ExceptionInInitializerError
An unexpected error occured caused by exception ExceptionInInitializerError: null

play.exceptions.UnexpectedException: Unexpected Error
        at play.Invoker$Invocation.onException(Invoker.java:244)
        at play.Invoker$Invocation.run(Invoker.java:286)
        at Invocation.HTTP Request(Play!)
Caused by: java.lang.ExceptionInInitializerError
        at play.templates.TemplateLoader.load(TemplateLoader.java:78)
        at play.mvc.Router.parse(Router.java:162)
        at play.mvc.Router.parse(Router.java:190)
        at play.mvc.Router.parse(Router.java:164)
        at play.mvc.Router.load(Router.java:48)
        at play.mvc.Router.detectChanges(Router.java:219)
        ... 1 more
Caused by: groovy.lang.MissingFieldException: No such field: metaClass for class: java.lang.Class
        at groovy.lang.MetaClassImpl.getAttribute(MetaClassImpl.java:1074)
        at groovy.lang.MetaClassImpl.getStaticProperty(MetaClassImpl.java:1308)
        at groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:707)
        at org.codehaus.groovy.runtime.Invoker.getProperty(Invoker.java:727)
        at org.codehaus.groovy.runtime.InvokerHelper.getProperty(InvokerHelper.java:206)
        at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.getProperty(ScriptBytecodeAdapter.java:295)
        at Script1.run(Script1.groovy:1)
        at groovy.lang.GroovyShell.evaluate(GroovyShell.java:521)
        at groovy.lang.GroovyShell.evaluate(GroovyShell.java:496)
        at play.templates.GroovyTemplate.<clinit>(GroovyTemplate.java:62)
        ... 7 more
2012-06-11 08:48:04,569 ERROR (play) ~ Error during the 500 response generation
java.lang.NoClassDefFoundError: Could not initialize class play.templates.GroovyTemplate
        at play.templates.TemplateLoader.load(TemplateLoader.java:78)
        at play.templates.TemplateLoader.load(TemplateLoader.java:172)
        at play.server.PlayHandler.serve500(PlayHandler.java:778)
        at play.server.PlayHandler$NettyInvocation.run(PlayHandler.java:237)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
        at java.util.concurrent.FutureTask.run(FutureTask.java:166)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
        at java.lang.Thread.run(Thread.java:722)
2012-06-11 08:47:51255信息(播放)~Starting/home/ubuntu/programs/teamcity/buildAgent/work/a9561c50f06f33d5/portal/src
2012-06-11 08:47:51259信息(播放)~无模块可用(/home/ubuntu/programs/teamcity/buildAgent/work/a9561c50f06f33d5/portal/src/modules/less-0.9)
2012-06-11 08:47:51260信息(播放)~模块安全可用(/home/ubuntu/programs/play/play-1.2.4-mbknor-3/modules/secure)
2012-06-11 08:47:51261信息(播放)~模块crud可用(/home/ubuntu/programs/play/play-1.2.4-mbknor-3/modules/crud)
2012-06-11 08:47:53608调试(com.asual.lesscss.LessEngine)~初始化LESS引擎。
2012-06-11 08:47:53945调试(com.asual.lesscss.reducegine)~使用实现版本:Rhino 1.7 release 3 2011 07 19
2012-06-11 08:47:55396警告(游戏)~你在玩游戏!在开发模式下
2012-06-11 08:47:55716信息(播放)~正在端口9000上侦听HTTP(等待启动第一个请求)。。。
2012-06-11 08:48:04566错误(播放)~
@6ajlb3agi
获取请求的内部服务器错误(500)/
Oops:ExceptionInInitializerError
异常ExceptionInInitializerError导致出现意外错误:null
play.exceptions.UnexpectedException:意外错误
Invoker$Invocation.onException(Invoker.java:244)
Invoker$Invocation.run(Invoker.java:286)
在Invocation.HTTP请求时(播放!)
原因:java.lang.ExceptionInInitializeError
play.templates.TemplateLoader.load(TemplateLoader.java:78)
play.mvc.Router.parse(Router.java:162)
play.mvc.Router.parse(Router.java:190)
play.mvc.Router.parse(Router.java:164)
at play.mvc.Router.load(Router.java:48)
play.mvc.Router.detectChanges(Router.java:219)
... 还有一个
原因:groovy.lang.MissingFieldException:没有这样的字段:类的元类:java.lang.class
位于groovy.lang.MetaClassImpl.getAttribute(MetaClassImpl.java:1074)
位于groovy.lang.MetaClassImpl.getStaticProperty(MetaClassImpl.java:1308)
位于groovy.lang.MetaClassImpl.getProperty(MetaClassImpl.java:707)
位于org.codehaus.groovy.runtime.Invoker.getProperty(Invoker.java:727)
位于org.codehaus.groovy.runtime.InvokerHelper.getProperty(InvokerHelper.java:206)
位于org.codehaus.groovy.runtime.ScriptBytecodeAdapter.getProperty(ScriptBytecodeAdapter.java:295)
在Script1.run(Script1.groovy:1)
在groovy.lang.GroovyShell.evaluate中(GroovyShell.java:521)
在groovy.lang.GroovyShell.evaluate中(GroovyShell.java:496)
play.templates.GroovyTemplate.(GroovyTemplate.java:62)
... 还有7个
2012-06-11 08:48:04569错误(播放)~生成500响应时出错
java.lang.NoClassDefFoundError:无法初始化类play.templates.GroovyTemplate
play.templates.TemplateLoader.load(TemplateLoader.java:78)
play.templates.TemplateLoader.load(TemplateLoader.java:172)
at play.server.PlayHandler.serve500(PlayHandler.java:778)
在play.server.PlayHandler$NettyInvocation.run(PlayHandler.java:237)
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
位于java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
在java.util.concurrent.FutureTask.run(FutureTask.java:166)中
位于java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)
位于java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
运行(Thread.java:722)

这是一个奇怪的问题,但我有一个解决方案

这个问题似乎是由与
-groovy->groovy-all-1.0-jsr05
依赖项的jar冲突引起的

  • 很久以前,为了从我的项目中运行groovy脚本,我在我的项目中添加了这个依赖项
  • 从那时起,我的项目似乎不再需要这种依赖关系
  • 事实上,我的项目构建在相当长的一段时间内一直忽略了这种依赖性:
  • ::问题摘要:::警告 ::::::::::::::::::::

      ::          UNRESOLVED DEPENDENCIES         ::
    
      ::::::::::::::::::::::::::::::::::::::::::::::
    
      :: groovy#groovy-all-1.0-jsr;05: java.text.ParseException:
    
    在中找到不一致的模块描述符文件 'http://repo1.maven.org/maven2/groovy/groovy-all-1.0-jsr/05/groovy-all-1.0-jsr-05.pom': 错误的模块名称:预期为class='groovy-all-1.0-jsr'found='groovy-all';坏的 修订:预期为'05'发现为'1.0-jsr-05'

      ::::::::::::::::::::::::::::::::::::::::::::::
    
    ::错误mavenCentral:在中找到错误的模块名 : 预期='groovy-all-1.0-jsr-found='groovy-all'

      mavenCentral: bad revision found in
    
    : 预期的class='05发现的class='1.0-jsr-05'

  • 昨天,由于某些巫毒的原因,在我们的CI机器上(没有其他机器),这个依赖开始正确解析,获取这个文件,并导致类加载问题。这相当令人不安,因为我仍然不知道发生了什么变化,我有点担心这可能会发生在我们的生产机器上
  • 解决方案是摆脱这种依赖