POI 3.7 java.lang.Ошибка несовместимости при создании экземпляра шрифта

#websphere #apache-poi

#websphere #apache-poi

Вопрос:

Я получаю java.lang.Ошибка IncompatibleClassChangeError со следующим фрагментом:

 Workbook workbook = new HSSFWorkbook();
Font arial = workbook.createFont(); // java.lang.IncompatibleClassChangeError thrown here
  

Я использую POI 3.7 с WebSphere 7 Portal Server. Тот же код (и, насколько я могу судить, те же jars) работал с консольным приложением Netbeans. Также кажется, что jar 3.7 является единственным в пути к классу. В проекте также используется JasperReports 4.1.2. Могу ли я предоставить дополнительную информацию?

Ответ №1:

Я почти уверен, что у вас есть более старая версия POI в вашем пути к классу

В часто задаваемых вопросах POI есть раздел, посвященный именно этому случаю. Вы захотите использовать код оттуда, чтобы определить, откуда поступает дополнительная копия POI, и удалить старый jar

Комментарии:

1. Вы правы. jakarta-poi.jar загружается из PortalServer lwo prereq.odc shared app