在 Vaadin 中提供 NoClassDefFoundError 的附加组件
Add-on giving NoClassDefFoundError in Vaadin
我发现了这个可以将屏幕内容转换为 PDF 文件的插件。但是,当我添加这些代码行时:
PdfFromComponent factory = new PdfFromComponent();
factory.export(contentcity);
我收到此错误消息:
'javax.servlet.ServletException: com.vaadin.server.ServiceException:
java.lang.NoClassDefFoundError: com/itextpdf/text/DocumentException'
with root cause: 'com.vaadin.server.ServiceException:
java.lang.NoClassDefFoundError: com/itextpdf/text/DocumentException'
我已经将jar文件添加到库中并编译了widgetset,但错误仍然存在。有人可以简要地解释一下如何处理吗?
不幸的是,当 class 有多个版本时,JVM 也会抛出 NoClassDefFoundError。您的 class 路径中可能有多个 iText JAR。检查您使用的附加组件是否包含 iText JAR,并仔细检查您没有多次包含该 JAR。
您需要将以下 Maven 依赖项添加到您的项目中:
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.6</version>
</dependency>
出于某种奇怪的原因,作者没有在他的插件中提供 pom 文件,因此他无法将其标记为依赖项。
我发现了这个可以将屏幕内容转换为 PDF 文件的插件。但是,当我添加这些代码行时:
PdfFromComponent factory = new PdfFromComponent();
factory.export(contentcity);
我收到此错误消息:
'javax.servlet.ServletException: com.vaadin.server.ServiceException: java.lang.NoClassDefFoundError: com/itextpdf/text/DocumentException' with root cause: 'com.vaadin.server.ServiceException: java.lang.NoClassDefFoundError: com/itextpdf/text/DocumentException'
我已经将jar文件添加到库中并编译了widgetset,但错误仍然存在。有人可以简要地解释一下如何处理吗?
不幸的是,当 class 有多个版本时,JVM 也会抛出 NoClassDefFoundError。您的 class 路径中可能有多个 iText JAR。检查您使用的附加组件是否包含 iText JAR,并仔细检查您没有多次包含该 JAR。
您需要将以下 Maven 依赖项添加到您的项目中:
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.6</version>
</dependency>
出于某种奇怪的原因,作者没有在他的插件中提供 pom 文件,因此他无法将其标记为依赖项。