Linux下的Java应用启动

  • 前言:
如何在Linux服务器上启动Java应用,本篇文章的主要内容包括:
1.maven打包jar
2.应用文件夹目录结构
3.启动文件start.sh的编写
ps:
参考地址:http://blog.csdn.net/yang3wei/article/details/7961336
  • maven打包jar
1.运行maven install 生成对应的jar文件,例如quartz.jar
2.运行mvn dependency:copy-dependencies -DoutputDirectory=target/libs导出依赖包
注意:
maven生成jar的时候可以过滤掉配置文件,为了将配置文件和jar包分离,方便后期修改配置
  • 应用文件夹目录结构
文件目录结构:
-quartz
--bin
---start.sh
--libs
---*.jar
--conf
---*.xml
---*.properties

quartz:项目根目录
bin:启动文件
libs:依赖的jar包和打包好的jar
conf:项目的配置文件
  • 启动文件start.bat的编写
#!/bin/sh
JAVA_OPTS="-Duser.timezone=GMT+8 -Xms256m -Xmx512m"
APP_HOME=/tmp/quartz
APP_MAIN=com.wqw.study.quartz.practice.Main
echo "$APP_HOME"/libs/
for tradePortalJar in "$APP_HOME"/libs/*.jar;  
do  
   CLASSPATH="$CLASSPATH":"$tradePortalJar"  
done  

for config in "$APP_HOME"/conf/*;
do 
  CLASSPATH="$CLASSPATH":"$config"
done

echo $CLASSPATH

tradePortalPID=0 
getTradeProtalPID(){  
    javaps=`$JAVA_HOME/bin/jps -l | grep $APP_MAIN`  
    if [ -n "$javaps" ]; then  
        tradePortalPID=`echo $javaps | awk '{print $1}'`  
    else  
        tradePortalPID=0  
    fi  
}

startup(){  
    getTradeProtalPID  
    echo "===================="  
    if [ $tradePortalPID -ne 0 ]; then  
        echo "$APP_MAIN already started(PID=$tradePortalPID)"  
        echo "======================="  
    else  
        echo -n "Starting $APP_MAIN"  
        nohup $JAVA_HOME/bin/java $JAVA_OPTS -classpath $CLASSPATH $APP_MAIN &  
        getTradeProtalPID  
        if [ $tradePortalPID -ne 0 ]; then  
            echo "(PID=$tradePortalPID)...[Success]"  
            echo "====================="  
        else  
            echo "[Failed]"  
            echo "==========="  
        fi  
    fi  
}  

startup  

  • 总结:
    本文结束,有任何问题欢迎大家补充和交流。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值