2011-08-30 23 views
1

我有我的HTML頁面上添加一個條件就是播放:無效的方法中的代碼長度

#{if userObject == null} 
<a href="/login">Text</a> 
#{/if} 

的代碼的開發模式,做工精細,並獲得在PROD模式這個錯誤。

SEVERE: Cannot start in PROD mode with errors 
java.lang.ClassFormatError: Invalid method Code length 65561 in class file Template_M1175588447$_run_closure1_closure2 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:621) 
    at play.templates.GroovyTemplate$TClassLoader.defineTemplate(GroovyTemplate.java:77) 
    at play.templates.GroovyTemplate.compile(GroovyTemplate.java:133) 
    at play.templates.TemplateLoader.scan(TemplateLoader.java:184) 
    at play.templates.TemplateLoader.scan(TemplateLoader.java:194) 
    at play.templates.TemplateLoader.scan(TemplateLoader.java:194) 
    at play.templates.TemplateLoader.getAllTemplate(TemplateLoader.java:164) 
    at play.Play.preCompile(Play.java:501) 
    at play.Play.init(Play.java:273) 
    at play.server.Server.main(Server.java:131) 

是否有關於這個

+0

沒有看到「東西」和「某個路徑」是什麼,創建它們的方法的代碼我們不能真正幫助。 –

+0

更新後的問題 –

回答

3

我相信你的問題與你添加的代碼無關,而是讓一個模板「太大」超出了允許的行大小(用Java)的方法。

也許你正在學習大型模板,或者你的網頁很長。

+0

我不確定這個問題,但我做了你所說的,它的工作原理。我刪除了一些行,在外部文件中添加了代碼並導入了該文件。這項工作。謝謝。 –

+0

我也一樣,不要假設你可以分享你如何重構代碼的細節? – MrChick

1

正如任何出路的官方Java文檔上說,這意味着JVM試圖讀取一個類文件的格式不正確。因此,嘗試刪除所有類文件,tmp文件夾並重新編譯。

相關問題