我在用 asant build 编译 《The J2EE 1.4 Tutorial》中的 helloservice 时,出现编码 GBK 的不可映射字符的警告,然后在 generate-wsdl 这一步中就出了下面的错:
\bin\wscompile.bat -define -mapping build/mapping.xml -d build -nd build -classpath build config-interface.xml error=3我估计是在 compile-service 阶段中的“编码 GBK 的不可映射字符的警告”造成的。
网上查说可以用 javac -encoding utf-8 xxx.java 解决编码问题,但问题是 javac 是由 asant 调用的,那么该怎么办呢?

解决方案 »

  1.   

    最近忙其它事了。今天重新 asant build 了一下 helloservice 示例。查看 build.xml,再追踪到 j2eetutorial14\examples\jaxrpc\common\targets.xml,在第 52 行处,定义了 javac 的参数,我们仿照加上 encoding="ISO-8859-1"。(由于示例源码用的是西欧编码)再编译,即可去除“不可映射字符的警告”。但 error=3 的错误仍在。google 一下,发现 error=3 是 java 编译的路径错误,
    然后发现 \bin\wscompile.bat 有点不对劲,于是找到 j2eetutorial14\examples\jaxrpc\common\build.properties 中,
    发现 j2ee.home=
    是空的,最后把它改成我的 j2ee 的安装路径,编译成功。