1

全文:我正在尝试启动一个具有更大内存分配的 hudson 实例,并且我目前正在使用 root 拥有的脚本,我无法直接修改这些脚本来传递参数。但是,脚本当前在启动服务时会传递 $JAVA_ARGS 变量。我已将所需参数导出到 JAVA_ARGS,但应用程序似乎仍受旧内存限制的约束。

问题:有没有办法找出启动实例时使用了哪些命令行参数。更具体地说,我希望找到传递给 Xmx 和 Xms 的值(如果有的话)。

java version "1.6.0_12"
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
4

2 回答 2

2

经过一番搜索,我找到了一个非常简单的解决方案(错过了这么久我有点尴尬)。只要您传递正确的标志,您就可以使用 ps 看到在 linux 中运行的任何命令的命令行。我刚刚调用ps -fHu hudson并能够看到对 java 的完整命令行调用,它显示了传入的参数。

于 2011-10-06T18:34:21.230 回答
0

由于您可以导出 $JAVA_ARGS,也许您可​​以覆盖 $PATH 以欺骗脚本运行另一个程序而不是 JVM,这可能是一个简单地将其参数写入某处的程序。

于 2011-10-04T19:59:17.897 回答