一个让人N郁闷的Applet路径(class not found)问题
公司主要替供电局做系统, Web子系统上常常需要显示一些曲线,以前都是完全用Applet来做,但是显示的一些效果不是很好,而且好多显示格式控制比较繁琐。 一直听说JFreeChart不错,今天拿来看了看,想用JFreeChart结合Applet做个稍微好用点的插件,但是一开始就麻烦不断。 最郁闷的就是这个class not found 的问题,遇到问题上google 想必都是大家的习惯,google一下,说什么的都 有,说的最多的废话就是“你的class文件路径是不是写错”云云。 一个简单的HelloWorld,如下 import java.applet.Applet; public class HelloWorld extends Applet{ <applet code=”*.class” width=”*” height=”*”></applet>页面中如此简单的标签,再怎么错检查两遍也总该出来了吧?于是我盯着屏幕一个字一个字地对了几遍,确定一个字不差。但是还是无法运行,老是class not found当然了,既然是测试,applet的class文件和页面是放在同一个目录下的,因此不用写codebase属性。再编译几次,还是不行,郁闷ING! 问人吧!前后找了四个,不是不知道就是同上的那句废话,感情我是新来的?连那么几个字母都能敲错? 想想算了,求人不如求己,定下心来仔细思量一下,这个问题可能有三种引起的可能: 1、路径写错(正常人都能很快找到); 2、浏览器的Java虚拟机问题; 3、编译出的class文件浏览器不认识 于是一边下最新的JRE,一边换编译器,先用1.3的编译命令javac -target 1.3 HelloWorld.java,出现“目标版本1.3与默认的源版本1.5冲突”,看来1.5的编译器有问题,换!找1.4的,再次执行,OK,编译通过,喜死!重启浏览器,calss HelloWorld not found,我太阳! 没事,干咱们这个的,就是要不屈不挠的精神:javac -target 1.2 HelloWorld.java,1.2也通过,再重启浏览器,依然如故,我汗! 最后一次,1.1,编译通过,重启浏览器,哈哈,终于出现这句价值2个小时的“你好Applet”! 哎,血泪史啊。记录一下,也给还在头疼的兄弟稍微提醒下,一定要编译成1.1的class,否则不能运行。如果要在开发工具里面做Applet,如Eclipse、MyEclipse,一定要设置complier为1.3,然后在工程里面选“为每个工程设置不同的编译器”(对应的英文)目标class格式选1.1。
import java.awt.Graphics;
public void paint(Graphics g){
g.drawString("你好Applet", 2, 20);
}
}![]()


推荐文章 |
