1

编辑:

嗨,我正在使用 JBoss 7.1 运行时服务器,当我构建我的项目并在本地主机上运行它时,我的 MAC 出现问题,我总是从 JFreeChart 库中收到一个无法初始化的错误。我正在使用 Maven 导入我的所有库,我的存储库是:

<repositories>
        <repository>
            <id>java.net2</id>
            <name>Repository hosting the jee6 artifacts</name>
            <url>http://download.java.net/maven/2</url>
        </repository>
        <repository>
            <id>JBoss repository</id>
            <url>https://repository.jboss.org/nexus/content/groups/public-jboss/</url>
        </repository>

        <repository>
            <id>org.openfaces</id>
            <url>http://repository.openfaces.org/repository</url>
        </repository>
        <repository>
            <id>jfree</id>
            <url>http://www.ibiblio.org/maven/jfree/</url>
        </repository>
    </repositories>

我用于 JFreeChart 的依赖项是:

        <dependency>
            <groupId>jfree</groupId>
            <artifactId>jcommon</artifactId>
            <version>1.0.16</version>
        </dependency>

        <dependency>
            <groupId>jfree</groupId>
            <artifactId>jfreechart</artifactId>
            <version>1.0.13</version>
        </dependency>

这是错误:

exception

javax.servlet.ServletException: Could not initialize class org.jfree.chart.JFreeChart
    javax.faces.webapp.FacesServlet.service(FacesServlet.java:606)
root cause

java.lang.NoClassDefFoundError: Could not initialize class org.jfree.chart.JFreeChart
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Class.java:171)
    org.openfaces.taglib.internal.chart.AbstractStyledComponentTag.checkJFreeChart(AbstractStyledComponentTag.java:33)
    org.openfaces.taglib.internal.chart.AbstractStyledComponentTag.setComponentProperties(AbstractStyledComponentTag.java:27)
    org.openfaces.taglib.internal.chart.ChartTag.setComponentProperties(ChartTag.java:39)
    org.openfaces.taglib.facelets.AbstractFaceletsComponentHandler.setAttributes(AbstractFaceletsComponentHandler.java:54)

当我在 Windows PC localhost 或 Linux 服务器上运行我的项目时,我没有收到此错误。我希望有人可以帮助我并为我的问题提供解决方案。

4

2 回答 2

1

请确保您的 JAR 在WEB-INF/lib文件夹中。如果您使用的是 Apache Maven,请在其中包含以下依赖项pom.xml

<dependency>
    <groupId>jfree</groupId>
    <artifactId>jfreechart</artifactId>
    <version>1.0.13</version>
</dependency>
于 2013-08-19T05:57:01.280 回答
1

我猜你是在无头环境中运行,所以 UI (awt) 不起作用,所以通过 -Djava.awt.headless=true 使其工作

于 2016-03-18T12:40:31.430 回答