Java 如何开始使用JFreeChart?

Java 如何开始使用JFreeChart?,java,jfreechart,Java,Jfreechart,我以前从未使用过任何第三方库。下载jfreechart-1.0.14.tar.gz后我应该做什么 我不知道我是否做对了这些事情: 1.将jcommon-1.0.17.jar和jfreechart-1.0.14.jar放在与我的源代码相同的目录中。 2.在源代码中导入所需的类(例如,Import org.jfree.util.Rotation;) 许多文章告诉您如何在IDE中实现这一点。但我不是IDE,而是用vim编写代码并自己编译。那么,假设我没有做错任何事情,我应该如何用javac编译源代码并

我以前从未使用过任何第三方库。下载
jfreechart-1.0.14.tar.gz
后我应该做什么

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

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


编辑:

这是我的文件布局:
./src
|-test.java
/lib
|-jcommon-1.0.17.jar
|-jfreechart-1.0.14.jar

我通过
javac-cp“lib/*”-d classes/src/test.java

然后由
java-cp类:lib/jcommon-1.0.17.jar:jfreechart-1.0.14.jar测试

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

我如何解决这个问题



库不应与源代码位于同一位置。如果您还不想使用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
要运行应用程序,请执行以下命令:

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

库不应与源代码位于同一位置。如果您还不想使用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
要运行应用程序,请执行以下命令:

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

这篇文章可能会有帮助:这篇文章可能会有帮助:是否可以使用
lib/*
来代替
lib/jfreechart-1.0.14.jar:lib/jcommon-1.0.17.jar
(很抱歉,这个愚蠢的问题,现在没有JDK来测试它)?是的,这是可能的,因为Java 6:它不应该是
而不是
在Windows上,
在Unix(Linux、Mac等)上。我不知道com.foo.bar.MyClass是什么。另外,为什么两个答案都有目录
com
?这是Java中的某种约定吗?是否可以使用
lib/*
来代替
lib/jfreechart-1.0.14.jar:lib/jcommon-1.0.17.jar
(很抱歉这个愚蠢的问题,现在没有JDK来测试它)?是的,这是可能的,因为Java 6:它不应该是
而不是
在Windows上,
在Unix(Linux、Mac等)上。我不知道com.foo.bar.MyClass是什么。另外,为什么两个答案都有目录
com
?这是Java中的某种约定吗?