java的main函数在linux下面发布

3 篇文章 0 订阅
2 篇文章 0 订阅

Java编写的普通的main函数在linux服务器下面的发布过程

一:在Eclipse中将java项目转成maven项目。为windows配置maven的bin路径

二:在dos下面用 mvn clean package将项目生成一个jar文件。

三:在磁盘上创建search文件夹,里面包括两个子文件夹,bin,lib

1.      lib里面存放mvn生产的项目的jar文件以及项目外加的jar包文件

2.      bin里面存放在linux里面启动的start.sh的shell脚本文件

四:用winscp将windows下面的search文件传输到linux里面

五:在linux下面找到bin目录下面的start.sh文件,然后用 sh start.sh执行脚本文件

 

  问题:start.sh是在windows下面编写的,一些编译方式不同,有可能存在看不见的字符,脚本文件是dos格式的,在每一行的行尾以\r\n来标识,其其ASCII码分别是0x0D, 0x0A.

  解决方法:用vi编辑start.sh文件,在命令模式下输入 setfileformat=unix 保存后退出。

六:用sh start.sh &是后台执行start.sh文件

 

 

 Start.sh文件

 

#!/bin/sh

 

ARTIFACTID="searches"

VERSION="0.0.1-SNAPSHOT"

 

RECM_HOME=$PWD

dirname $0 | grep "^/" >/dev/null

if [ $? -eq 0 ];then

   RECM_HOME=`dirname $0`

else

   dirname $0 | grep "^\." > /dev/null

   retval=$?

   if [ $retval -eq 0 ];then

       RECM_HOME=`dirname $0|sed "s#^.#$RECM_HOME#"`

   else

       RECM_HOME=`dirname $0|sed "s#^#$RECM_HOME/#"`

   fi

fi

RECM_HOME=`dirname $RECM_HOME`

 

RECM_CLASSPATH=''

jars=`ls $RECM_HOME/lib/`

for jar in $jars

       do

     RECM_CLASSPATH="$RECM_CLASSPATH"':'"$RECM_HOME/lib/$jar";

   done

RECM_CLASSPATH=$RECM_CLASSPATH':."'

 

echo "\n RECM_HOME=$RECM_HOME \n"

echo "RECM_CLASSPATH=$RECM_CLASSPATH\n"

 

cd $RECM_HOME

java -DRECM_HOME="$RECM_HOME"-Dlog4j.configuration="file:$RECM_HOME/log4j.properties" -classpath$RECM_CLASSPATH com.izp.searches.RecommendTimer

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值