Linux下java程序的依赖运行(下)

公司开发完一套软件后,可能需要在手机上进行测试,几百上千台手机都要手动进行推送安装的话效率极低,此时写一套java程序把文件自动推送到设备上将大大降低人力物力的投入。本篇基于上篇的铺垫,使用FTP工具实现PC端 向多台手机推送文件,编写的java文件需要用到依赖包运行,本篇将结合应用场景,再次学习“依赖运行”。

需要准备:

Linux操作环境、

FTP依赖包:【http://download.csdn.net/download/u012134786/9650966】、

Android手机两台,下载ES文件浏览器--->远程管理--->打开:分别记下【ip地址 :192.168.20.199   端口号:3721】【ip地址:xxxxxxxx  端口号:xxxxxxx】、


①编写推送文件的FtpDemo类,

import java.io.IOException;
import java.net.SocketException;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import java.nio.charset.Charset;
import java.io.FileInputStream;

public class FtpDemo {
	public static void conn(){
		FTPClient ftp = new FTPClient();
		//二维数组依次表示:手机ip地址、手机端口、FTP用户名、FTP密码。若要向更多手机逐一推送文件,可以在array中添加更多的数组。
		String[][] array = {
			{"192.168.20.199", "3721","root","root"},
			{"192.168.20.53", "2121","root","123456"}
		};
		for(int i = 0; i < array.length; i++){
			try{
				/*
				 *循环获取二维数组的数据
				 *ftp.connect(ip地址,端口号);
				 *ftp.login(用户名,密码);
				 */
				ftp.connect(array[i][0],Integer.parseInt(array[i][1]));
				ftp.login(array[i][2],array[i][3]);
				ftp.setCharset(Charset.forName("UTF-8"));
				ftp.setControlEncoding("UTF-8");
				//向手机推送一个jar包,ftp.sotreFile(文件名,文件所在路径);
				ftp.storeFile("/commons-net-3.5.jar", new FileInputStream("/home/test/commons-net-3.5.jar"));
				//推送成功则输出success!
				System.out.println("success");
			}catch(SocketException e){
				e.printStackTrace();
			}catch(IOException e){
				e.printStackTrace();
			}finally{
			
				try{
					Thread.sleep(500);
				}catch(InterruptedException e1){
					e1.printStackTrace();
				}
				
				try{
					ftp.abor();
				
				}catch(IOException e){
					e.printStackTrace();
				}
			}
		}
	}

	public static void main(String args[]){
		conn();
	}
}


②将依赖jar包与FtpDemo.java文件放在同一目录下


编译【javac -cp .:commons-net-3.5.jar FtpDemo.java】

运行【java -cp .:commons-net-3.5.jar FtpDemo】

编译运行FtpDemo.java,看到输出了success代表文件已经推送到手机上叻


默认是推送到存储空间的根目录


注意:两台手机和Linux操作系统都要处于同一网段内才能进行文件推送,即局域网、或者说同一个wifi中;

手机也要时刻检查是否已经开启FTP,否则执行java程序的时候会报错连接失败。



  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值