我编译和jar来源就好了,但是当我运行它时,它会抱怨:
java.lang.ClassNotFoundException:javax.swing.JPanel
我想在编译时我必须包含Swing库,但是我该怎么做呢?
我在我的系统中包含了每个rt.jar:
javac -classpath /usr/lib/jvm/java-1.5.0-gcj-4.4/jre/lib/rt.jar:/usr/lib/jvm/java-6-sun-1.6.0.20/jre/lib/rt.jar:/usr/lib/jvm/java-6-openjdk/jre/lib/rt.jar:/home/me/equinox.jar *java
仍然编译好,运行时仍然崩溃.
最佳答案 看起来你正在使用
GCJ.这是一个旧项目,它试图将Java实现作为纯粹的开源实现.
他们得到了一半,但实施远非完美.这些天,最好完全避免它,而是使用OpenJDK(或Oracle/Sun JDK,如果不需要开源).
在Ubuntu上,您可以使用update-java-alternatives
将系统配置为不同的Java实现:
sudo update-java-alternatives -s java-6-openjdk
顺便说一句,您永远不需要在类路径上明确指定rt.jar,因为它始终可以自动使用.此外,使用来自不同JVM的多个rt.jar是一种灾难.