【Ant】Ant实例(1)一个Java文件依赖于某jar包,需要打包部署


作者: wangding263  链接:http://wangding263.javaeye.com/blog/309829  发表时间: 2009年01月04日

         这是一个很简单的web 容器,是从Jetty这个容器中抽出最小子集,自己打包的.但是只能运行Servlet呵呵。

 

         webserver.jar是jetty的依赖包,JettySample.java是运行文件. 

         JettySample.java的编译依赖于webserver.jar.

         

         Build配置文件和文件压缩包如下,重要的地方,自己先写下注释,备忘,以后好查 呵呵。

         

 
   
< project  default ="run"  basedir ="." >   
    
< property  name ="lib.dir"  location ="lib"   />   
    
< property  name ="src"  location ="src"   />   
    
< property  name ="classpath"  location ="build"   />   
    
< property  name ="dist"  location ="dist"   />   
    
< property  name ="webserver_jar"  value ="webserver.jar"   />   
  
       
<!-- 定义项目编译的时候,以来的lib包的路径 -->   
        
< path  id ="project.class.path" >   
        
< pathelement  path ="${classpath}"   />   
        
< fileset  dir ="${lib.dir}" >   
            
< include  name ="**/*.jar"   />   
        
</ fileset >   
    
</ path >   
    
< target  name ="init" >   
        
< mkdir  dir ="${src}"   />   
        
< mkdir  dir ="${classpath}"   />   
        
< mkdir  dir ="${lib.dir}"   />   
        
< mkdir  dir ="${dist}"   />   
        
< copy  file ="${webserver_jar}"  todir ="${lib.dir}"   />   
        
< copy  file ="JettySample.java"  todir ="${src}"   />   
        
< copy  file ="${webserver_jar}"  todir ="${dist}"   />   
    
</ target >   
  
    
< target  name ="compile"  depends ="init" >   
  
      
<!-- target="1.4" 表示编译器用1.4的方式编译,当然也可以采用1.5,classpath 中的refid这表示依赖于那些jar包编译 -->   
        
< javac  fork ="true"  target ="1.4"  srcdir ="src"  destdir ="${classpath}"  debug ="true"   >   
            
< classpath  refid ="project.class.path"   />   
        
</ javac >   
  
      
</ target >
       
< target  name ="jar"  depends ="compile" >   
        
< jar  destfile ="${dist}/${webserver_jar}"  update ="true"  basedir ="${classpath}" >   
        
<!-- 定义jar包运行的时候,实现要寻找的含有main方法的主类 -->   
  
            
< manifest >   
                
< attribute  name ="Main-class"  value ="JettySample"   />   
            
</ manifest >   
  
        
</ jar >   
    
</ target >   
    
< target  name ="run"  depends ="jar,clean" >   
        
< java  jar ="${dist}/${webserver_jar}"  fork ="true"   />   
    
</ target >   
       
    
< target  name ="clean" >   
  
        
< delete  dir ="${classpath}" />   
        
< delete  dir ="${src}" />   
        
< delete  dir ="${lib.dir}" />   
    
</ target >   
  
  
</ project >   

 

 

文件下载:webserver.zip 

你可能感兴趣的:(java)