2011-01-05 11 views
2

Play 플러그인에서 기본 바이트 코드 향상 기능을 실험하고 있지만 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 (즉, 기본 제공 플러그인 이후)으로 늘리면 도움이됩니까? 플러그인의 향상 메소드가 특정 클래스에 대해 호출되지 않는 문제점을 가지고 있지만이 문제점을 보지 못했습니다.

+0

1에서 10000까지 다양한 값을 시도했습니다. 어떤 클래스를 찾을 수없는 경우가 있지만 그 중 어느 것도 작동하지 못하는 경우가 있습니다. –