ant上传svn之后,自动发送邮件

昨天写了一个自动打包后,提交svn的的,后来觉得,每次提交之后,还要发一封邮件通知大家,觉得很麻烦,于是想到ant 的email发送功能

这里就介绍一下吧

使用email功能,需要将 activation.jar和mail.jar 放入ant\lib中

然后在properties中定义好

email.host=smtp.XXX.com
##Email port 默认不需要设置 (可以不要)
email.port=25
##Email subject 这里不要写中文,如果写中文,需要使用jdk自带的native2ascii 工具转码
email.subject= XXX已发布
##Email from 显示邮件从哪发送过来
[email protected]
##Email to 这里可以写多个,中间用逗号隔开
[email protected],[email protected] ...
<mail mailhost="${email.host}" mailport="${email.port}" subject="${email.subject}"
      from="${email.from}" tolist="${email.to}"
      encoding="mime" messagemimetype="text/html" >
  <!-- 
    接收邮件地址也可以按照下面方式写,但是一次只能写一个地址,不过可以写多个
     <to-address="[email protected]"/>
     <to-address="..."/>
   -->
   <message>Your message here</message> 
     <!--
      这里可以不用写死message ,可以从文件中取内容 使用messagefile
     messagefile="./src/test/ant/message_content.txt"
-->
   <!--
    这里可以放附件,不需要不用填写,可以使用相对路径,也可以使用绝对路径,同时支持通配符
    <attachments>
        <fileset dir=".">
           <include name="1.xls"/>
           ... 可以放多个
        </fileset>
    </attachments>
-->
</mail> 

 对于常见属性的说明: 

 1、 mailhost    mail 服务器的地址
 2、 mailport     mail服务器的端口
 3、 replyto       回复mail地址   
 4、 tolist           收件地址列表  可用子标签替代
 5、 cclist          抄送地址列表  可用子标签替代
 6、 bcclist        暗送地址列表  可用子标签替代
 7、 message   邮件内容  一个或多个<message>子标签替代
 8、messagefile  文件列表文件内容将被做为邮件内容,  一个或多个<message>子标签替代
 9、messagemimetype 邮件类型, 默认为text/plain
10、
filset 附件列表 多个附件逗号或空格隔开 用<fileset> 子标签替代
11、user 发送邮箱的用户名
12、password 发送邮箱的密码
13、 subject  邮件标题
14、 charset 字符集
15、 encode 编码
16、 ssl 是否使用 TLS/SSL


 mail 标签的子标签 
 (1)to / cc / bcc / from/ replyto 
     属性 
          name   显示名称
          address  邮件地址列表

  (2)message 内容为标记邮件内容
      属性
         src  作为文件内容的文件列表
         mime  mime 类型
         charset  字符集
  
  (3)fileset
       属性 dir  目录  可以设置绝对路径,也可以是相对路径
      子标签 include  属性 name 指定要包含的文件支持通配符

存在问题:

1. 附件如果为中文名字,则显示乱码,但打开是正常的

猜你喜欢

转载自weixiao2013.iteye.com/blog/1902749