maven多模块项目部署
来源:互联网 发布:上古卷轴5捏脸数据ece 编辑:程序博客网 时间:2024/06/03 10:57
maven多模块项目的部署(启动是通过运行主main方法):
1 在linux上直接建立文件夹,如mkdir project
2 之后cd project,同理用mkdir命令建立bin、conf、lib和run目录(是bin启动文件目录中引用的),对于lib中的jar包,对于jar包,包括项目生成的jar包,还包括该项目运行需要的其他jar包(依赖包)。
对于项目生成的jar包,可以通过在eclipse中,项目右键-Run as build-》Goals中输入package即可,生成很多Jar包。
3 可以把项目中的配置文件,放到conf中,便于管理
4 运行的话,在bin中书写运行文件,命名run.sh和projectRun文件,run.sh为具体的启动文件,projectRun启动run.sh文件。
对于run.sh如下:
#!/bin/sh
APP_HOME=/project
CLASSPATH=$APP_HOME/conf
#项目生成的jar包
CLASSPATH=$CLASSPATH:$APP_HOME/lib/dev-server-0.1.jar
CLASSPATH=$CLASSPATH:$APP_HOME/lib/dev-svn-0.1.jar
#下面为运行上面jar需要的jar包
CLASSPATH=$CLASSPATH:$APP_HOME/lib/core2-2.4.8.jar
CLASSPATH=$CLASSPATH:$APP_HOME/lib/activation-1.1.jar
CLASSPATH=$CLASSPATH:$APP_HOME/lib/unboundid-ldapsdk-3.2.0.jar
MAINCLASS=con.dev.DevServer
cd $APP_HOME
exec /usr/bin/java -classpath "$CLASSPATH" -Dfile.encoding=utf-8 $MAINCLASS
对于projectRun写成对应的启动函数,包括start stop status restart等等,具体展示如下:
#!/bin/sh
### BEGIN INIT INFO
# Provides: project-service
# Required-Start: $remote_fs
# Required-Stop: $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start or stop the koudai push service.
### END INIT INFO
alias chkconfig=sysv-rc-conf
APP_NAME="project-service"
WORK_DIR="/project"
APP_ID="project-server"
BIN=$WORK_DIR/bin/run.sh
pidfile=$WORK_DIR/run/$APP_ID.pid
. /lib/lsb/init-functions
case "$1" in
start)
pidofproc -p $pidfile $BIN >/dev/null
if [ "$?" = "0" ]; then
log_failure_msg "$APP_NAME is already started"
exit 1
fi
log_begin_msg "Starting $APP_NAME"
start-stop-daemon --quiet -m -b -d $WORK_DIR -p $pidfile --start --exec $BIN
log_end_msg $?
;;
stop)
log_begin_msg "Stopping $APP_NAME"
start-stop-daemon --stop -p $pidfile
log_end_msg $?
;;
restart)
log_begin_msg "Restarting $APP_NAME"
start-stop-daemon --stop --quiet --oknodo -p $pidfile
sleep 1
start-stop-daemon --quiet -m -b -d $WORK_DIR -p $pidfile --start --exec $BIN
log_end_msg $?
;;
status)
status_of_proc -p $pidfile $BIN "$APP_NAME" && exit 0 || exit $?
;;
install)
cp $0 /etc/init.d/$APP_ID
chkconfig --add $APP_ID
;;
uninstall)
rm /etc/init.d/$APP_ID
chkconfig --del $APP_ID
;;
*)
echo "Usage: $APP_ID {start|stop|restart|status}" >&2
exit 1
;;
esac
exit 0
自启动:
ln -sf /dev/dev-sync/bin/dev-sync /etc/init.d/dev-sync-server 把dev-sync添加到/etc/init.d目录并命名为dev-sync-server 服务
update-rc.d dev-sync-server defaults dev-sync-server 为服务名
sysv-rc-conf
- maven多模块项目部署
- Eclipse中部署maven多模块项目
- Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署
- Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署
- Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署 .
- Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署 二
- Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署
- Maven多模块项目 eclipse热部署 Maven项目实现 tomcat热部署 .
- Maven多模块项目 eclipse暖部署 Maven项目实现 tomcat热部署
- Maven实战(四)---多模块项目---JBOSS部署问题
- 在Eclipse中部署Maven多模块项目
- 多模块Maven(sg-uap)项目部署到tomcat
- 关于maven多模块聚合项目部署等问题--<Jenkins>
- maven多模块项目
- maven多模块项目
- maven 多模块项目
- maven 多模块项目
- maven 多模块项目
- 关于JAVA中怎么读取和修改.properties文件中的值
- 舞动海报
- mybatis中 #$ 注入参数的不同
- 解决Android Studio运行编译时间久的最有效方案
- 0.618法
- maven多模块项目部署
- imcrop
- UML类图与类的关系
- 利用localtime_s函数格式化输出当地日期与时间
- socket client 使用特定网卡
- JAVA-17.1-反射
- Python3.5 + django1.10.+ 安装mysql失败解决方案:Error loading MySQLdb module: No module named 'MySQLdb'
- Docker基础入门及示例
- 属性动画(下)