当前位置: 首页 > 知识库问答 >
问题:

如何开始使用JFreeChart?

郜卓君
2023-03-14

我以前从未使用过任何第三方库。下载了jfreechart-1.0.14.tar.gz后该怎么办?

我不知道我是否做对了这些事情:
1。放置jcommon-1.0.17。jar和jfreechart-1.0.14。jar与我的源代码位于同一目录中
2。在源代码中导入所需的类(例如,Import org.jfree.util.Rotation;

许多文章告诉您如何在IDE中做到这一点。但是我用vim编写代码,自己编译,而不是IDE。那么,假设我没有做错任何事情,我应该如何用javac编译源代码,用java运行代码?

编辑:

这是我的文件布局:
/src
|-测试。java
/lib
|-jcommon-1.0.17。jar
|-jfreechart-1.0.14。罐子

我编译javac-cp lib/*-d类/src/test.java
然后运行java-cp类:lib/jcommon-1.0.17.jar:jfreechart-1.0.14.jartest

但是,出现了一些错误:
异常线程"main"java.lang.NoClassDefFoundError: org/jfree/data/General/PieDataset

我如何解决这个问题?

Exception in thread "main" java.lang.NoClassDefFoundError: org/jfree/data/general/PieDataset  
at java.lang.Class.getDeclaredMethods0(Native Method)  
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)  
at java.lang.Class.getMethod0(Unknown Source)  
at java.lang.Class.getMethod(Unknown Source)  
at sun.launcher.LauncherHelper.getMainMethod(Unknown Source)  
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)  
Caused by: java.lang.ClassNotFoundException: org.jfree.data.general.PieDataset  
at java.net.URLClassLoader$1.run(Unknown Source)  
at java.net.URLClassLoader$1.run(Unknown Source)  
at java.security.AccessController.doPrivileged(Native Method)  
at java.net.URLClassLoader.findClass(Unknown Source)  
at java.lang.ClassLoader.loadClass(Unknown Source)  
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)  
at java.lang.ClassLoader.loadClass(Unknown Source)  
... 6 more

共有1个答案

归鸿朗
2023-03-14

库不应与源代码位于同一位置。如果您还不想使用Gradle这样的构建工具来处理库依赖关系,那么我建议使用以下布局:

project
    src
        .java files here, organized in a folder tree matching the package tree
    classes
        compiled .class files here
    lib
        .jar files here

要编译,请进入项目目录并执行以下命令:

javac -cp lib/jfreechart-1.0.14.jar:lib/jcommon-1.0.17.jar -d classes src/com/foo/bar/MyClass.java src/com/foo/bar/MyOtherClass.java

要运行应用程序,请执行以下命令:

java -cp classes:lib/jfreechart-1.0.14.jar:lib/jcommon-1.0.17.jar com.foo.bar.MyClass
 类似资料:
  • 我以前从未使用过任何第三方库。下载了后该怎么办? 我不知道我是否做对了这些事情: 1。放置与我的源代码位于同一目录中 2。在源代码中导入所需的类(例如,) 许多文章告诉您如何在IDE中做到这一点。但是我用vim编写代码,自己编译,而不是IDE。那么,假设我没有做错任何事情,我应该如何用编译源代码,用运行代码? 编辑: 这是我的文件布局: /src |-测试。java /lib |-jcommon-

  • 问题内容: 有什么好的资源可以开始使用Node.JS?有没有好的教程,博客或书籍? 当然,我已经访问了它的官方网站http://nodejs.org/,但是我认为他们拥有的文档不是一个很好的起点。 问题答案: 讲解 NodeSchool.io交互式课程 节点的艺术(Node.js简介) 你好,世界 Node.js指南 使用Node.js,Express和MongoDB构建博客 适用于初学者的Nod

  • 问题内容: 我在这里和那里读过,我们现在 应该 使用Selenium 2(如果我的理解正确的话,请使用WebDriver)。我不是在谈论Selenium IDE,它确实很容易使用。 我已经阅读了Selenium网站上的文档(该文档声称不完整,因为Selenium 2不稳定,可以)。我的问题是:我无法开始使用Selenium。 我的意思是,如上所述,我已经下载并启动了它。我到处都找到了测试用例的样本

  • 使用代码模板 如果使用离线工具如Sublime Text来开发的话,您需要按照如下步骤准备好开发环境: 一个包含 直接引用JS 我们还可以直接引用CDN上已经构建好的JS脚本,如下在HTML中添加一个 <script> 标签: <!-- Production Version, Minified --><script src="https://aframe.io/releases/1.1.0/afr

  • 基本用法 多数情况下,使用Glide加载图片非常简单,一行代码足矣: Glide.with(fragment) .load(myUrl) .into(imageView); 取消加载同样很简单: Glide.with(fragment).clear(imageView); 尽管及时取消不必要的加载是很好的实践,但这并不是必须的操作。实际上,当 Glide.with() 中传入的

  • 此页面将帮助您开始在项目中使用 Epoch。 安装 Epoch 可以从以下包管理器安装 Epoch: npm bower packagist GitHub 上的发布档案包含了整个 Epoch 源。要在项目中使用它,您需要使用以下文件: dist/js/epoch.min.js dist/css/epoch.min.css 先决条件 安装后,您将需要设置您的页面,以便您可以生成图表。首先,Epoch