问题详情如下图所示
解决方法是将TIJ4/code/build.xml中的net/build.xml删除即可编译成功,过段时间后确定是当前所用的javassist.jar与jdk 1.5.0_22 不兼容造成这个原因,之前javaassisst.jar使用的是3.16.1版本,经测试确定3.15.0版本和1.5.0_22版本兼容
To know the version number, type this command:
% java -jar javassist.jar
可测试当前使用的jar版本和JDK版本是否兼容
不需要删除TIJ4/code/build.xml中的net/build.xml,更改javassit.jar版本后编译效果图
将jdk/jre/lib/javaws.jar的jar包加入到classpath后,再次使用ant编译效果如下图
从错误提示分析可知是swt.jar的版本与Java 1.5.0_22不兼容,将swt版本从4.7转为3.7.2,在目录C:\TIJ4\code目录下执行ant build,编译成功。
编译成功的效果图如下
Java编程下载地址 Think in Java 4th code sample
我使用的是 1.5.0_22 下载地址 jdk-1_5_0_22
需要有官网自己的账号即可下载jdk-1_5_0_22-windows-i586-p.exe成功。
操作系统:windows7 32bit
ant:apache-ant-1.9.9。
参考地址 1.http://www.mindviewinc.com/TIJ4/CodeInstructions.html
2.http://www.cnblogs.com/BJUT-2010/p/4522762.html
3.http://www.cnblogs.com/activity-life/archive/2012/07/12/2587266.html
在使用Ant编译《Java编程思想》样例代码时遇到`java.lang.UnsupportedClassVersionError`,原因是javassist.jar与JDK 1.5.0_22不兼容。解决方案是将javassist.jar版本降至3.15.0,或者在classpath中添加jdk/jre/lib/javaws.jar,并将swt.jar版本调整至3.7.2,以确保与JDK 1.5.0_22兼容。经过修改,编译成功。
1207

被折叠的 条评论
为什么被折叠?



