读书人

使用ant过程所遇有关问题总结

发布时间: 2012-08-13 13:21:53 作者: rapoo

使用ant过程所遇问题总结

1、fileSet中目录/文件的用法:

若是“appgen”,则只会拷贝名为appgen的空目录过去,它里面的文件和子目录则不会拷贝。?
若是“appgen/”,或“appgen/**”,则会把整个appgen目录拷贝过去,包括里面的文件和子目录。?
若是“appgen/*”,则只会把该目录和该目录下第一级子目录的所有东西拷贝过去,而不会拷贝第二级和第二级以下的。注:“appgen/*”这儿是一个*号,*号若大于两个,也跟一个*号是同样效果。比如“appgen/*”和“appgen/****”都只拷贝appgen目录下第一级子目录。?

?

注:若appeng这个目录本身就是个空目录,无论怎么写,这个空目录都不会被拷贝。也就是说,copy操作不会产生创建空目录的作用,要想创建空目录,只有用mkdir。?

参考:http://chenjia66804610.iteye.com/blog/421370

?

2、build.xml中获取jar包列表,通常用于在MANIFEST.MF中标明classpath。

?

<pathconvert property="libs.project" pathsep=" "><mapper><chainedmapper><flattenmapper /><globmapper from="*" to="lib/*" /></chainedmapper></mapper><path><fileset dir="lib"><include name="**/*.jar" /></fileset></path></pathconvert>

?

?调用时

?<attribute name="Class-Path" value="${libs.project}" />

参考:《HOWTO Create MANIFEST.MF Classpath From Ant》http://martin.ankerl.com/2005/11/30/howto-create-manifestmf-classpath-from-ant/#

?

3、编译java时出现“需要为 class、interface 或 enum”

? ? ?通常是编译时采用的编码和代码本身的编码不符,编译时指定编码编译即可解决。javac -encoding utf8 *.java

?

?

?

?

读书人网 >开源软件

热点推荐