2011-01-05 5 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 Acc[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. Иногда он меняет класс, который он не может найти, но ни один из них не позволил ему работать. –

 Смежные вопросы

  • Нет связанных вопросов^_^