日期:2014-05-20  浏览次数:20843 次

用Ant打包jar文件编码问题
我用ant打包jar文件时,源代码是用utf-8编码方式写的,并且在ant的build.xml文件中加了utf-8编码方式,可是打包后的jar文件双击运行起来怎么还是乱码???build.xml代码如下:


<?xml version="1.0" encoding="UTF-8"?>
<project basedir="." default="package">
<property name="compile" value="compile"></property>
<property name="package" value="tetris"></property>
<target name="preprocess">
<mkdir dir="${compile}"/>
<mkdir dir="${package}"/>
</target>
<target name="compile" depends="preprocess">
</target>
<target name="package" depends="compile">
</target>
<target name="myCompile" depends="preprocess">
<!-- 我就中在下在面指定的编码为encoding="utf-8" -->
<javac  encoding="utf-8" srcdir="src" destdir="${compile}"></javac>
</target>
<target name="myPackage" depends="myCompile">
<jar destfile="${package}/tetris.jar" basedir="${compile}">
<manifest>
<attribute name="Build-By" value="${user.name}"/>
<attribute name="Main-Class" value="w.j.block.Tetris"/>
</manifest>
</jar>
</target>
</project>
jar ant encoding

------解决方案--------------------
指定的编码只是指定了读.java源文件的编码..

你说的乱码是什么意思?在windows下打的包用到Linux下?
如果是的话,建议你试试
java -Dfile.encoding=GBK -jar 包名.jar
------解决方案--------------------
引用:
引用:指定的编码只是指定了读.java源文件的编码..

你说的乱码是什么意思?在windows下打的包用到Linux下?
如果是的话,建议你试试
java -Dfile.encoding=GBK -jar 包名.jar对了,是不是windows下的默认编码都是GBK???

最好把你的中文都用unicode编码,国际化的时候都是这样做的。
不同平台不同的地方都可能出现不一样的编码,所以统一一下