Eclipse+Ant+sshexec部署服务到远程服务器
这里介绍,如何通过本地编写代码,通过Ant构建部署在远程服务器上并直接运行。
eclipse需要额外的jar包。jsch-0.1.54.jar,如何添加这个插件,可以参考这里。
编写本地代码:
这里准备一个java类,用来简单测试,获取操作系统名称并打印出来。代码很简单,如下:
package com.xxx.ant;
public class GetOS {
public static void main(String[] args) {
String os = System.getProperty(“os.name”);
System.out.println(os);
}
}
接下来,我们准备构建的xml文件,这里给出build2.xml文件的全部内容。
<?xml version=”1.0” encoding=”UTF-8”?>
这是一个普通的构建脚本:在构建之前,先是清理以前的构建内容,避免受影响,然后初始化操作,生成需要的文件夹classes,dest,接着是编译java文件,然后生成class,将生成的class文件再打jar包。本来打完jar包,按照一般的流程,这里就是结束了,接下来,我们就是需要将jar包拷贝到linux服务器上执行,这类用了ant构建插件的ssh任务和sshexe任务,直接将jar包通过scp的方式拷贝到了linux,然后,运行java命令,执行com.xxx.ant.GetOS这个类。
运行之前,做个对比,本地运行结果,打印Windows 7:
运行:右键build2.xml ->Run As->Ant Build
控制台查看构建结果(日志中间省略打印类路径信息):
构建成功,并且打印了os.name为Linux。
远程服务器在构建前后的对比,并且我们也可以验证在linux远程服务器下运行获取os.name是否为Linux:
构建过程,按照build.xml中定义的任务依赖关系,首先是清理(如果以前构建过),初始化,编译,构建,ssh拷贝jar包,sshexec运行linux命令。
还没有评论,来说两句吧...