2014-12-07 35 views
0

我試圖做一個簡單的小程序顯示一個三維餅圖,但我得到一個爲什麼我從org/jfree/chart獲取NoClassDefFoundError?

RuntimeException (`java.lang.NoClassDefFoundError: org/jfree/chart/ChartPanel`) 

我一直在運行在圈子裏試圖找出原因,並認爲這可能與問題applet能夠讀取我使用的第三方庫。它在NetBeans中工作正常,但在瀏覽器中我一直收到錯誤。任何線索我做錯了什麼?下面的代碼:

HTML:

<APPLET codebase="classes" code="CyberThreatApplet/CyberThreatApplet.class" 
    archive="jfreechart-1.0.19.jar,jcommon-1.0.23.jar" width=350 height=200> 
</APPLET> 

的Java:

package CyberThreatApplet; 

import java.awt.Dimension; 
import javax.swing.JApplet; 
import org.jfree.chart.*; 
import org.jfree.chart.plot.PiePlot3D; 
import org.jfree.data.general.*; 
import org.jfree.util.Rotation; 

public class CyberThreatApplet extends JApplet 

{ 

@Override 
public void init() 
{ 
    CreateChart("Cyber Attack Pie Chart","Motivations Behind Cyber Attacks - May 2013"); 
} 

private void CreateChart(String appTitle, String chartTitle) 

{ 
    PieDataset dataset = createDataset(); 
    JFreeChart chart = createChart(dataset,chartTitle); 
    ChartPanel chartPanel = new ChartPanel(chart); 
    chartPanel.setPreferredSize(new Dimension(500,300)); 
    add(chartPanel); 
} 

private PieDataset createDataset() 

{ 
    DefaultPieDataset result = new DefaultPieDataset(); 
    result.setValue("Cybercrime",46); 
    result.setValue("Hacktivism",36); 
    result.setValue("Cyber Espionage",9); 
    result.setValue("Cyber Warfare",9); 
    return result; 
} 

private JFreeChart createChart(PieDataset dataset,String title) 

{ 
    JFreeChart chart = ChartFactory.createPieChart3D(title,dataset,true,true,false); 
    PiePlot3D plot = (PiePlot3D)chart.getPlot(); 
    plot.setStartAngle(90); 
    plot.setDirection(Rotation.CLOCKWISE); 
    plot.setForegroundAlpha(0.75f); 
    return chart; 
} 

} 
+0

如何做classes目錄你在HTML中使用? – 2014-12-07 13:30:20

+0

對不起,忘了添加 - 只是更新 – Danferan 2014-12-07 13:34:43

+0

格式化時,我將兩行'archive attribute'更改爲一行。它在原始HTML中是兩行嗎? – 2014-12-08 03:46:36

回答

1

確保jfreechart-1.0.19.jar(和所有其他罐子)位於相對於HTML文件

+0

我應該在哪個文件夾中保存.jar文件? – Danferan 2014-12-07 13:35:09

+0

出於某種原因,它仍然無法正常工作...將嘗試重新啓動我的電腦,看看是否能解決問題。 – Danferan 2014-12-07 13:53:07

+0

No wait ....是位於'classes'的'jfreechart-1.0.19.jar'嗎? – Reimeus 2014-12-07 13:53:53

相關問題