2012-05-30 2 views
3

Ниже представлена ​​структураNoClassDefFoundError только для определенного класса в EAR

 
ex.ear 
| 
|_lib-util.jar--CommonUtil.class,CommonException.class etc. 
| 
| 
| 
ejb.jar 
web.war 

уха Когда я называю это определенный класс, как это (CommonUtil.map(empDto)) в WEB и EJB уровня классов, то мы получаем NoClassDefFoundError. Остальные все классы, которые находятся в Util.jar, все вызываются нормально. Почему мы получаем эту ошибку только для этого класса?

EmployeeDTO empDto = new EmployeeDTO(); 
empDto.setId(1); 
empDto.setName("john"); 
CommonUtil.map(empDto); 
public class CommonUtil { 

    private static Mapper mapper = new BeanMapper(); 
    private static CommonUtil instance = new CommonUtil(); 

    private CommonUtil() { 
     super(); 
    } 

    public static <T> T map(Object source) { 
     T target = mapper.map(source); 
     return target; 
    } 

    public static <T> T map(Object source) { 
     mapper.map(source); 
     return target; 
    } 
} 
+0

Некоторая информация о системе может помочь ... –

+0

am Развертывание этого уха на сервере из стеклянной рыбы в моей локальной системе windows. – user739115

+0

Можно ли добавить сообщение в 'NoClassDefFoundError'? Есть три причины (по крайней мере), почему это исключение может быть выбрано: класс не может быть найден, класс-файл содержит неправильное имя, класс уже завершил статическую инициализацию. –

ответ

1

Вообще говоря NoClassDefFoundError происходит, если исключение происходит во время статической инициализации. Пожалуйста, внимательно проверьте журнал до NoClassDefFoundError, если возникло исключение при создании экземпляра BeanMapper или CommonUtil.

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