ant编译重设property的值

阅读更多

ant已经有N多种替代方案了,但也不是ant就没有可用之外了,它的跨平台性还是有很大的优势。

android就经常是使用ant来构建的。

 

ant脚本中property默认是不能重新设置值的,第一次定义之后,在整个project执行过程中是不会再变的。

最简单的定义方式如下:

 

但是在我们的编译脚本中经常有可能需要用到可以变的值,另一种值设值方式可以满足我们:

 

定义变量可以随时重新设值,但是又有一点,如果我们需要使用condition来条件设值的时候,不好意思,不支持var。 


          

 

直接点,要property支持重设,也不是不可能,在jdk 1.6之后,使用contrib可以支持,需要定义一个重设的脚本,需要下ant-contrib-0.6.jar到ant的lib目录下


    	
    	
       	project.setProperty(attributes.get("name"), attributes.get("value"));

同时增加以下一行声明:

 

用法如下:

 这样子就可以直接使用新值了。

本帖完整的示例:

 

 
    
     
     
    
    
   		  
    		
        project.setProperty(attributes.get("name"), attributes.get("value"));
		


 		
 		
 		
 		
 		
 		
 		
 		
 		
 		
 		
 		
 		
    
    
    
     ${nameA}
     ${nameB} 
     ${nameC}  
    

 

 

你可能感兴趣的:(ant,property,var,重设,reset)