grade task 批量替换packageName

task replacePackageName {

   FileTree tree = fileTree(dir:'src')

    tree.include'**/*.java'

    tree.include'**/*.xml'

    tree.each {File mfile ->

      fileReader(mfile.path,targetName)

}

//    fileReader("build.gradle", packageName)

}

def  fileReader(path, target_package) {

    def readerString ="";

    def hasReplace =false

    file(path).withReader('UTF-8') { reader ->

         reader.eachLine {

               if(it.find("com.lzl.test")) {

                        it = it.replace("com.lzl.test", target_package)

                         hasReplace =true

             }

                  readerString <<= it

                  readerString <<'\n'

}

if(hasReplace) {

           println(path +" has replace package.")

            file(path).withWriter('UTF-8') {

              within ->

               within.append(readerString)

     }

}

     return     readerString

}

}

使用方式:

先把包名所在文件夹名字改了,然后把task放到gradle中。执行task。批量替换修改后的包名

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,256评论 19 139
  • 去城里的车终于来了,沈精兵怀着复杂的心情离开了他讨厌的家。临上车那刻,他往家门口望了望。他很希望那刻能看到爷爷,毕...
    一辉而明阅读 208评论 1 2
  • 我知道自己的性格,喜欢腻着你,喜欢告诉你我想你了,我爱你,不成熟稳重,你不喜欢,你经历那么多,不喜欢我的轻浮,我知...
    写给我的她阅读 271评论 0 1
  • 1.从七牛下载命令行辅助工具qrsync 2.通过命令行进入到qrsync工具所在目录,编辑配置文件。例如: { ...
    不是好程序阅读 480评论 0 0
  • 一、读规画系列 二、行动: 1.看见:孩子这几天不用别人的催促,几个小时地听课,终于看见他想要做事的努力样了,临阵...
    阳光中的晨薇阅读 152评论 0 0