2021-8-10 java -cp(classpath)和java -ja

java -cp和java -jar区别:

#cp=classpath
java -cp 和 -classpath 一样,是指定类运行所依赖其他类的路径,通常是类库,jar包之类,需要全路径到jar包,window上分号“;”
分隔,linux上是分号“:”分隔。不支持通配符,需要列出所有jar包,用一点“.”代表当前路径。
#! /bin/bash
cd .
cd libs
class_path=.
for file in ls *.jar
do
class_path= c l a s s p a t h : {class_path}: classpath:{file}
done

exec nohup java -cp ${class_path} com.xxx.TestApplication >> …/logs/test.log 2>&1 &
*

APP_HOME=/home/application/test
CLASS_PATH=${APP_HOME}/conf:${APP_HOME}/libs/*

执行该命令时,会用到目录META-INF\MANIFEST.MF文件,在该文件中,有一个叫Main-Class的参数,它说明了java -jar命令执行的类。
#导出jar包的时候一定要指定main-class,只能指定一个jar包
java -jar test.jar

posted @ 2021-08-11 18:20  韧小钊  阅读(128)  评论(0)    收藏  举报