2011-01-05 55 views
2

我正在試用Pla​​y插件中的基本字節碼增強功能,但是當它試圖在提供的ApplicationClasses.ApplicationClass上運行時,無法找到該類。PlayPlugin.enhance中找不到類的問題

public void enhance(ApplicationClasses.ApplicationClass applicationClass) 
    throws NotFoundException, IOException, CannotCompileException 
{ 
    ClassPool classPool = ClassPool.getDefault(); 
    CtClass ctClass = classPool.get(applicationClass.name); 
    ... 
} 

唯一的例外是

 
Oops: NotFoundException An unexpected error occured caused by exception NotFoundException: controllers.CRUD 

play.exceptions.UnexpectedException: While applying [email protected] on controllers.CRUD 
     at play.classloading.ApplicationClasses$ApplicationClass.enhance(ApplicationClasses.java:215) 
... 
Caused by: javassist.NotFoundException: controllers.CRUD 
     at javassist.ClassPool.get(ClassPool.java:436) 
     at AccessControlPlugin.enhance(AccessControlPlugin.java:19) 

的遊戲框架調用enhance方法。它不應該知道比處理尚未提供的類更好嗎?我如何得到這個工作?

回答

0

如果將play.plugins中的插件加載順序增加到1000,即在內置插件之後,它有幫助嗎?我還沒有看到這個增強的問題,雖然我對插件的增強方法沒有被調用某些類有問題。

+0

我嘗試了各種值從1到10000.有時它會更改哪個類找不到,但它們都不允許它工作。 – 2011-01-08 19:25:00

相關問題