首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Groovy FTP上载后存档文件已损坏

Groovy FTP上载后存档文件已损坏
EN

Stack Overflow用户
提问于 2018-06-27 04:09:32
回答 1查看 383关注 0票数 1

我想使用groovy脚本尝试从Jenkins到我的FTP服务器的FTP上传。上传后,存档文件已损坏,无法打开。

我从Jenkins的工作区下载了我的归档文件。这些都是正确的。

代码语言:javascript
复制
import org.apache.commons.net.ftp.FTPClient
import org.apache.commons.net.ftp.FTPFile
import org.apache.commons.net.ftp.FTPF
import java.io.InputStream

@Grab(group='commons-net', module='commons-net', version='3.6')
def upload(){

 String ftpServer = "ftp.my-domain.com";
 String folder = "/";
 def ftpClient = new FTPClient()




  ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
  try {
    InputStream is = classLoader.getResourceAsStream("deployment.tar.gz")
             ftpClient.connect(ftpServer)
             ftpClient.enterLocalPassiveMode()
             ftpClient.login("jenkins@my-domain.com","JenkisPassword")
             ftpClient.setFileType(FTP.BINARY_FILE_TYPE)
            // Store file to server
            ftpClient.storeFile("deployment.tar.gz", is);
            ftpClient.logout();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            try {
                ftpClient.disconnect();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
}

upload();

groovy有什么解决方案吗?或者这是一种糟糕的方式?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-27 04:20:04

在发送文件之前,您可能需要调用setFileType(FTP.BINARY_FILE_TYPE)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51050677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档