Gradle之FTP文件下载

1、背景

项目上需要使用本地web,所以我们直接将web直接放入assets资源文件夹下。但是随着开发进行web包越来越大;所以我们想着从版本库里面去掉web将其忽略掉,使用gradle命令下载web。由于web包是放在局域网服务器上的,服务器支持FTP文件协议,所以使用FTP插件下载文件。

2、FTP

FTP官网文档

Gradle官网文档
gradle配置

3、FTP工具

ftp-util.gradle

configurations {ftpAntTask
}dependencies {ftpAntTask("org.apache.ant:ant-commons-net:1.9.2") {module("commons-net:commons-net:3.3")}
}void downloadFtpFiles(String serverIp, String userId, String password, String url, localDir) {ant.taskdef(name: 'ftp',classname: 'org.apache.tools.ant.taskdefs.optional.net.FTP',classpath: configurations.ftpAntTask.asPath)//指定ftp地址及账户信息ant.ftp(action: 'get', server: serverIp, userid: userId, password: password, remotedir: url) {// 删除老文件delete(new File(localDir))//指定下载文件位置fileset(dir: new File(localDir)) {include(name: "**")}}
}//导出函数
ext {downloadFtpFiles = this.&downloadFtpFiles
}

使用方式:

导入方式:将ftp-util.gradle文件放在根目录下然后使用一下代码导入groovy代码

apply from: "${project.rootProject.file('ftp-util.gradle')}"

下载任务

task downloadFiles() {//清理缓存dependsOn 'clean'def dir = buildDir.getPath() + '/dir'doLast {//获取最新版本信息ant {println 'web-ftp:serverIp:' + serverIpprintln 'web-ftp:userId:' + userIdprintln 'web-ftp:password:' + passwordprintln 'web-ftp:dir:' + dirprintln 'web-ftp:sync start'def url = webUrl + '/latest'//调用FTP插件下载文件函数downloadFtpFiles(serverIp, userId, password, url, dir)println 'web-ftp:sync end'}}
}

调用task方式

./gradlew downloadFiles

转载于:https://www.cnblogs.com/hejing-michael/p/gradle-zhiftp-wen-jian-xia-zai.html

Gradle之FTP文件下载相关推荐

  1. ini文件怎么使用_ftp文件下载工具,ftp文件下载工具是怎么使用的?使用指南

    ftp文件下载工具是什么工具,可能有人会回答说不知道,因为一般只有从事网站管理的工作者会使用的多一点.但不是每个人生来就会的,所以刚开始肯定都会学习怎么使用.这篇文章就来教一下大家ftp文件下载工具是 ...

  2. java ftp下载文件源码_java实现ftp文件下载的源代码

    这几天做的一个项目中用到了ftp文件传输,用java实现了ftp文件的下载. 一.win7下搭建ftp服务器 详见:http://jingyan.baidu.com/article/4b52d7026 ...

  3. php curl ftp下载文件,php使用curl实现ftp文件下载功能的方法

    这篇文章主要为大家详细介绍了php使用curl实现ftp文件下载功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 具体内容如下 不知道为什么用正常的ftp_get函数下载文件速度特别慢,但是用f ...

  4. Java实现Ftp文件下载及图片预览

    * 功能描述: 通过浏览器的方式下载ftp文件 * @Param: [url, port, username, password, ftpFilePath, fileName, response] * ...

  5. 倍福FTP文件下载方式

    文章目录 一.什么是FTP 二.FTP文件的下载方式 步骤: (1). 打开计算机找到如下所示,点击网络位置空白处右键添加一个新网络 (2). 在弹出的对话框中点击下一页 一.什么是FTP FTP就是 ...

  6. linux 安装 ftp 以及 将ftp文件下载到指定目录

    1. ftp 的安装 rpm -qa |grep vsftpd 2. 安装命令 yum -y install vsftpd 3.新增FTP用户 useradd -d /home/ftp ftpuser ...

  7. 【Linux】FTP文件下载

    代码来源于网络,记录下,方便日后使用(适用于Linux平台) /*使用FTP协议获取服务器上的文件(Passive方式) 1 在客户端创建一个SOCK_STREAM类型的套接字,并与FTP服务器端的2 ...

  8. android端集成FTP文件下载功能

    我使用的是ftp4j的SDK,非常轻巧易用,可以轻松的实现类似文件管理器的功能,但我的项目需求只要求下载,所以就只实现了下载功能. 官方地址:http://www.sauronsoftware.it/ ...

  9. Linux下使用 shell 脚本实现ftp文件下载

    最近从单片机转岗Linux,上级叫我熟悉下shell脚本,用shell脚本获取ftp上的文件,本节先介绍下载文件.单个下载文件脚本实现如下: 运行环境:WSL ####### ftp服务器上下载/ho ...

最新文章

  1. 创建第二个 local network - 每天5分钟玩转 OpenStack(84)
  2. Python之tkinter:动态演示调用python库的tkinter带你进入GUI世界(Scale/Scale的Command)
  3. C++ | 蓝桥杯2021年第十二届卡片问题(源代码:C语言/C++/Python)
  4. 关于scriptManager与JS代码兼容问题
  5. 模拟实现unordered_mapunordered_set
  6. Linux 文件系统编程之系统调用和标准I/O库
  7. 在线2-36任意进制转换工具
  8. 阿里云云计算 50 云监控的使用
  9. markdown中编写数学公式的常用 latex 语法
  10. 牛客高级项目课(仿牛客网)笔记
  11. android weex开发流程,阿里Weex混合app开发工程搭建指南(android为例)
  12. Openstack版本查看
  13. 层次高的人,都拥有成长型思维
  14. 我学历低,学软件测试能找到工作吗?
  15. 初步使用bootstrap框架
  16. 树莓派连接笔记本当外接显示屏使用
  17. finereport企业微信集成总结
  18. 突破微软远程桌面帧率限制
  19. 努力并非是人生的难题,如何做选择才是人类社会永远的课题!
  20. [原创]轻轻的,我走了,离开了这里,踏上了新的旅途

热门文章

  1. linux php-fpm启动失败,linux运行php-fpm遇到问题
  2. 字节跳动简历冷却期_干货 | 字节跳动HR是如何挑选简历的?
  3. php仓储管理系统 eku_河南物流仓储外包哪里有 极鹭云仓
  4. 负载策略_面试官:讲一下什么是负载均衡,什么是轮询策略随机策略哈希策略
  5. oracle 11g 企业版 标准版,Oracle 数据库11g 第 2 版 标准版、企业版 下载
  6. php 词法分析,【PHP7源码学习】2019-03-20 PHP词法分析
  7. mysql backdoor_Mysql UDF BackDoor
  8. java开发app教程,进阶加薪全靠它!
  9. 用Pytorch实现三个优秀的自然图像分割框架!(包括FCN、U-Net和Deeplab,可直接训练预测)
  10. python【数据结构与算法】深入浅出哈希表