2013-12-08 11 views
6

プレイフレームワーク1.2.xのは、次のエラーで起動します:プレイ1.2.xのUnexpectedException ContinuationEnhancer:15

Oops: UnexpectedException 
An unexpected error occured caused by exception UnexpectedException: While applying class play.classloading.enhancers.ContinuationEnhancer on helpers.CheatSheetHelper$2 

play.exceptions.UnexpectedException: While applying [email protected] on helpers.CheatSheetHelper$2 
    at play.plugins.PluginCollection.enhance(PluginCollection.java:556) 
    at play.classloading.ApplicationClasses$ApplicationClass.enhance(ApplicationClasses.java:235) 
    at play.classloading.ApplicationClassloader.loadApplicationClass(ApplicationClassloader.java:167) 
    at play.classloading.ApplicationClassloader.getAllClasses(ApplicationClassloader.java:431) 
    at play.Play.preCompile(Play.java:600) 
    at play.Play.init(Play.java:304) 
    at play.server.Server.main(Server.java:162) 
Caused by: play.exceptions.UnexpectedException: While applying class play.classloading.enhancers.ContinuationEnhancer on helpers.CheatSheetHelper$2 
    at play.CorePlugin.enhance(CorePlugin.java:302) 
    at play.plugins.PluginCollection.enhance(PluginCollection.java:551) 
    ... 6 more 
Caused by: java.lang.RuntimeException: java.io.IOException: invalid constant type: 15 
    at javassist.CtClassType.getClassFile2(CtClassType.java:203) 
    at javassist.CtClassType.subtypeOf(CtClassType.java:303) 
    at javassist.CtClassType.subtypeOf(CtClassType.java:318) 
    at play.classloading.enhancers.ContinuationEnhancer.enhanceThisClass(ContinuationEnhancer.java:49) 
    at play.CorePlugin.enhance(CorePlugin.java:297) 
    ... 7 more 
Caused by: java.io.IOException: invalid constant type: 15 
    at javassist.bytecode.ConstPool.readOne(ConstPool.java:1027) 
    at javassist.bytecode.ConstPool.read(ConstPool.java:970) 
    at javassist.bytecode.ConstPool.<init>(ConstPool.java:127) 
    at javassist.bytecode.ClassFile.read(ClassFile.java:693) 
    at javassist.bytecode.ClassFile.<init>(ClassFile.java:85) 
    at javassist.CtClassType.getClassFile2(CtClassType.java:190) 
    ... 11 more 

答えて

5

これは、プレイを実行するために使用されているJDKに関連することができます。 java8 jdkを使用している場合は、代わりにjava7を試してみてください。これは私にとって問題を解決しました。

14

Play 1.2.5には、JDK 8コンパイラで生成されたバイトコードを完全に理解していないJavassist 3.9.0が付属しています。 JDK 7でコンパイルするか、play/lib/framework /の下のJavassistライブラリをJavassist 3.18.0にアップグレードします。