在linux服务器上面部署java web项目jar包

最近在工作中遇到的需要把java web项目中的一部分功能打成jar包并部署到linux服务器上的问题,现在将打jar包过程和部署方式记录如下:
一、将具体功能打成jar包
  1、点击file选择Export
   在linux服务器上面部署java web项目jar包_第1张图片
2、在弹框内选择java下面的JAR file,如下图所示。然后点击next。

3、在接下来的弹框内选择你要导出下项目和项目下面你需要导出的class,如果是整个项目要导出则src,和WebRoot下面的META-INF文件夹和WEB-INF都要选上。
 然后下面的JAR file是你导出的jar包的路径和jar名称。选择好导出路径后点击next。

4、接下来要选择main class,这个main class说白了就是你导出的功能代码的入口。需要说明的是要选作mian class的类必须含有mian方法,否则你在弹框内找不到你需要的那个类。选择mian class 页面如下所示。
选择好main class后点击finish完成导出。

二、linux服务器端部署

 1、在linux服务器上面新建文件夹将你导出的jar放到文件夹下面。
 2、接下来就是创建.sh文件来编译运行jar内的java文件了。我用的.sh文件配置如下
#!/bin/sh
#. /dcmmon/mail.env
JAVA_HOME="/usr/java6/jre"
SMS_PATH="/app/xxxfile/"//根目录,我的jar包时放在了根目录下面的lib文件夹下面了,.sh文件放在根目录下面
SDATE=
CLASSNAME=xxx  //这是就是你导出jar包时设置的main class、如果不知道路径可以打开jar包到META-INF文件夹下面的文件里面copy。
if [ ${#} = 1 ]; then
  SDATE=${1}
fi
//这里引用的是你导出的jar包以及你的java代码所依赖的jar包,像spring相关的jar包,还有log4j的jar包都需要放在你的jar外面另外引用,打在你的jar包里面是不起作用的。
CLASSPATH="$SMS_PATH/lib/classes12.jar:$SMS_PATH/lib/unisys-zxsms.jar:$SMS_PATH/lib/IvrMsgSendXmlBean.jar:$SMS_PATH/lib/xmlbeans-2.3.0.jar:
$SMS_PATH/lib/axis2-kernel-1.6.1.jar:$SMS_PATH/lib/XmlSchema-1.4.7.jar:$SMS_PATH/lib/commons-logging-1.1.1.jar:
$SMS_PATH/lib/neethi-3.0.1.jar:$SMS_PATH/lib/wsdl4j-1.6.2.jar:$SMS_PATH/lib/axis2-adb-1.6.1.jar:$SMS_PATH/lib/axiom-api-1.2.12.jar:
$SMS_PATH/lib/axiom-impl-1.2.12.jar:$SMS_PATH/lib/axis2-transport-local-1.6.1.jar:$SMS_PATH/lib/mail.jar:$SMS_PATH/lib/httpcore-4.0.jar:
$SMS_PATH/lib/commons-codec-1.3.jar:$SMS_PATH/lib/commons-httpclient-3.1.jar:$SMS_PATH/lib/axis2-transport-http-1.6.1.jar:${CLASSPATH}"
export CLASSPATH
//以下是运行日志设置
"$JAVA_HOME/bin/java" ${CLASSNAME} ${SDATE} > $SMS_PATH/smsone.log 2>&1
cat $SMS_PATH/smsone.log >> $SMS_PATH/sms.log
MALFL="$SMS_PATH/smsone.log"
RESULT=`tail -1 $SMS_PATH/smsone.log`
#find $SMS_PATH/file/ -mtime +30 |xargs rm 2>&1 > /dev/null


至此配置完成,剩下的就是在linux服务器上设置运行时间,也可以手动执行。


你可能感兴趣的:(在linux服务器上面部署java web项目jar包)