我有一组基于部署的活动,也涉及
通过创建一个执行这些FTP活动的基于Java的小实用程序,可以自动执行这些活动。
以下是我的问题:
请注意,我不是在论坛中寻找解决我特定问题的方法;我更感兴趣的是在这里寻找技术/ java库的替代品和建议。
答案 0 :(得分:4)
是我们非常有apache commons net library来执行ftp操作。
you can view this link:
http://commons.apache.org/net/
Download the commons-net-ftp-2.0 lib from the above site.
I am also attaching my program to upload and download song to ftp server using the apache
lib
上传:
public void goforIt(){
FTPClient con = null;
try
{
con = new FTPClient();
con.connect("192.168.2.57");
if (con.login("Administrator", "KUjWbk"))
{
con.enterLocalPassiveMode(); // important!
con.setFileType(FTP.BINARY_FILE_TYPE);
String data = "/sdcard/vivekm4a.m4a";
FileInputStream in = new FileInputStream(new File(data));
boolean result = con.storeFile("/vivekm4a.m4a", in);
in.close();
if (result) Log.v("upload result", "succeeded");
con.logout();
con.disconnect();
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
<强>你下载过:强>
public void goforIt(){
FTPClient con = null;
try
{
con = new FTPClient();
con.connect("192.168.2.57");
if (con.login("Administrator", "KUjWbk"))
{
con.enterLocalPassiveMode(); // important!
con.setFileType(FTP.BINARY_FILE_TYPE);
String data = "/sdcard/vivekm4a.m4a";
OutputStream out = new FileOutputStream(new File(data));
boolean result = con.retrieveFile("vivekm4a.m4a", out);
out.close();
if (result) Log.v("download result", "succeeded");
con.logout();
con.disconnect();
}
}
catch (Exception e)
{
Log.v("download result","failed");
e.printStackTrace();
}
}
答案 1 :(得分:2)
由于您提到了PuTTY(SSH客户端),您应该查看JSch库。它提供SSH访问,使您能够安全地传输文件和远程执行shell脚本。
答案 2 :(得分:1)
我们在高效的环境中使用ftp4j。例如,它具有HTTP代理,SOCKS代理,FTPS和FTPES支持。
要执行shell脚本,您必须使用像these ones这样的ssh库。