版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。
版权
Java专栏收录该内容
39 篇文章0 订阅
订阅专栏
在使用java -jar app.jar形式运行jar包时,需要覆盖jar包里classpath下的配置文件,可以采用下面的命令:
$ java -Xbootclasspath/p:/usr/hdp/hadoop/conf:/usr/hdp/hbase/conf -jar app.jar
说明:
-Xbootclasspath/p和-Xbootclasspath/a都存在,一个是放在加载路径之前,一个是放在最后后面通过:(unix),;(windows) 来分隔多个目录
根据文档介绍:https://www.ibm.com/support/knowledgecenter/zh/SSYKE2_7.0.0/com.ibm.java.aix.70.doc/diag/appendixes/cmdline/Xbootclasspathp.html
-Xbootclasspath/p:
将指定目录、压缩文件或 Java™ 归档文件的前缀附加到引导程序类路径的开头。请勿部署使用 -Xbootclasspath: 或-Xbootclasspath/p: 选项的应用程序来覆盖标准 API 中的类。原因是此类部署会违反 Java2 运行时环境二进制代码许可证。缺省行为是在内部 VM 目录和 .jar 文件中搜索引导程序类和资源。
-Xbootclasspath/a:
将指定的目录、压缩文件或 .jar 文件附加至引导程序类路径的结尾。缺省行为是在内部 VM 目录和 .jar 文件中搜索引导程序类和资源。