错误信息的内容  

 BUILD FAILED
D:\Documents and Settings\Administrator\workspace\Chapter5_1\build.xml:44:
java.lang.UnsupportedClassVersionError:
com/sun/tools/javac/Main
(Unsupported major.minor version 49.0)

build.xml文件中 出错的信息行

 <target name="compile" depends="prepare"
         description="Compiles all Java classes">
   <javac srcdir="${source.root}"
          destdir="${class.root}"
          debug="on"
          optimize="off"
deprecation="on">       此处为出错提示行
     <classpath refid="project.class.path"/>
   </javac>
 </target>

解决方法:修改build.xml 文件内容如下

 <target name="compile" depends="prepare"
         description="Compiles all Java classes">
   <javac srcdir="${source.root}"
          destdir="${class.root}"
source="1.4"
     target="1.4"
          debug="on"
          optimize="off"
          deprecation="off">          <!--显示错误信息提示版本不兼容 -->
     <classpath refid="project.class.path"/>
   </javac>
 </target>

关于意思用到javac标签的解释

srcdir  :必须的,除非嵌套有<src>标签。包含源文件的文件夹
debug: 当值未为true时产生调试信息
depend: 这个任务依赖的任务。当运行这个任务时,首先按照顺序依次执行完依赖的任务,如果出错将停止执行
optimize: 指出是否应该用优化方式编译源代码,默认为 off。
deprecation: 假如为真,将会给出不建议使用的API,默认值false

source: 假如设置为1.4,将激活断言。默认是1.3
target: Specifies the VM version to generate class files for (for example, 1.1 or 1.3).


网络上搜的问题解决:

eclipse运行ant build.xml文件 complie javac 时停止

一台机器上,由于是英文系统,安装的java也不是multiple-language的,
项目默认按照iso-8859字符集编码来生成的,我本地机器是中文,大概是GBK吧,我重新设置为了UTF-8。


在ant构建文件上右击,点击"run as"->"extenal tools configurations",

最后,在运行配置里,Common这个Tab页里,ConsoleEncoding设置编码为UTF-8后,一切正常。

看来这个ConsoleEncoding不仅仅是显示用的,而且在Ant运行的时候也有用。

本机程序出现的问题

警告warning: unmappable character for encoding UTF8   警告所指位置都在程序中出现中文注释的位置。字符集问题可以确定