サーバ上でmainメソッドを実行する方法
3152 ワード
詳細
1.mavenプロジェクトを新規作成し、テストクラスを作成し、pom.xmlファイルには、次の内容が追加されます.
2. mvn clean packageでこのプロジェクトをパッケージ化すると、依存するパッケージがtarget/libディレクトリの下にヒットします.
3. 作成start.sh実行スクリプト
4. プロジェクトパッケージとstart.shサーバディレクトリの下に置くstart.shファイル、mainメソッドが実行されます.
1.mavenプロジェクトを新規作成し、テストクラスを作成し、pom.xmlファイルには、次の内容が追加されます.
jar
UTF-8
1.8
org.apache.maven.plugins
maven-jar-plugin
2.4
${jdk.version}
${jdk.version}
${project.build.sourceEncoding}
target/classes
true
./
com.crt.member.sersordata.MemberService
${project.build.directory}/lib
org.apache.maven.plugins
maven-dependency-plugin
copy
package
copy-dependencies
${project.build.directory}/lib
2. mvn clean packageでこのプロジェクトをパッケージ化すると、依存するパッケージがtarget/libディレクトリの下にヒットします.
3. 作成start.sh実行スクリプト
#!/bin/bash
source /etc/profile
if [ "`ps -ef |grep crt-apigateway.jar|grep -v grep |awk '{print $2}'`" ];then
for pid in `ps -ef |grep crt-apigateway.jar|grep -v grep |awk '{print $2}'`;do
kill -9 $pid
done
fi
#export JAVA_HOME=/app/jdk
export PATH=$JAVA_HOME/bin:$PATH
APP_HOME=/tmp/sersordata/target/lib
for i in "$APP_HOME"/*.jar
do
CLASSPATH="$CLASSPATH":"$i"
done
export CLASSPATH=.:$CLASSPATH
echo ${CLASSPATH}
echo $JAVA_HOME
java -Xms2048M -Xmx2048M -Xmn512M -Xss256K -XX:+DisableExplicitGC -XX:SurvivorRatio=1 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:CMSFullGCsBeforeCompaction=0 -XX:+CMSClassUnloadingEnabled -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:SoftRefLRUPolicyMSPerMB=0 -Dfile.encoding=UTF-8 -Xms32m -Xmx200m com.crt.member.sersordata.MemberService -classpath ${CLASSPATH}
4. プロジェクトパッケージとstart.shサーバディレクトリの下に置くstart.shファイル、mainメソッドが実行されます.