在 linux 上如何实现 执行 java -jar xxx.jar
默认执行了 java -jar -Daaa=bbb xxx.jar
ps:为啥要这么做的呢,原因是安装 Oracle 的一个套件除了问题,默认校验了 SSL ,导致无法继续自动安装
1
liaojl 2022-12-07 14:53:55 +08:00 via iPhone 1
设置 alias 看看行不行, alias java='java -Daaa=bbb', 或者看看这个参数有没有对应的环境变量,export 一个
|
2
kokutou 2022-12-07 14:54:57 +08:00 via Android 1
java 的 bin 替换成 shell 脚本
|
3
yazinnnn 2022-12-07 14:55:53 +08:00 1
alias 不行吗
|
4
JimMoen 2022-12-07 14:56:12 +08:00 1
环境变量 `_JAVA_OPTIONS` 详情参见 Google
|
6
twofox OP @JimMoen
```export _JAVA_OPTIONS="-Dweblogic.nodemanager.sslHostNameVerificationEnabled=false -Dweblogic.security.SSL.ignoreHostnameVerification=true"``` 会出错 |
7
twofox OP |
10
RobberPhex 2022-12-07 20:59:01 +08:00 1
我觉得还有有必要解释一下各个环境变量的差异。
首先从意图上来说: 1. 如果需要给**java 和 jps 等运维工具**设置参数,而且这些参数是**java 通用**的,那么应该设置给环境变量`JAVA_TOOL_OPTIONS`。 2. 如果需要给**javaj 和 jps 等运维工具**j 设置参数,而且这些参数是**jvm 厂商相关**j 的,比如是 dragonwell 特有的开关,那么应该设置`DRAGONWELL_JAVA_OPTIONS`。 3. 如果需要**给 java 设置参数**,但是**不给运维工具设置**,而且参数是**java 通用**的,那么应该设置环境变量`JAVA_TOOL_OPTIONS`,并设置`DRAGONWELL_JAVA_TOOL_OPTIONS_JDK_ONLY=true`。 3.1. 如果是 jdk9 及以上,则应该使用更加标准的`JDK_JAVA_OPTIONS`。 4. 如果需要**给 java 设置参数**,但是**不给运维工具设置**,而且参数是**jvm 厂商相关**的,那么应该设置环境变量`DRAGONWELL_JAVA_OPTIONS`,并设置`DRAGONWELL_JAVA_TOOL_OPTIONS_JDK_ONLY=true`。 一些技术细节可以参考: [dragonwell 让 java agent 更好用]( https://robberphex.com/java-agent-is-getting-better-at-dragonwell/) |
11
RobberPhex 2022-12-07 20:59:33 +08:00
|
12
julyclyde 2022-12-08 08:39:11 +08:00 1
你需要理解:环境变量和 ulimit 类似,都是只对其所属进程和子进程有效
https://julyclyde.org/?p=578 |