在一个shell脚本中,我设置了JAVA_OPTS环境变量(以启用远程调试和增加内存),然后我执行jar文件如下:
export JAVA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Xms512m -Xmx512m"
java -jar analyse.jar $*
但似乎 JAVA_OPTS env 变量没有影响,因为我无法连接到远程调试,而且我看到 JVM 的内存没有变化。
可能是什么问题呢?
PS:我不能在 java -jar analyse.jar $*
命令中使用这些设置,因为我在应用程序中处理命令行参数。
原文由 Ashika Umanga Umagiliya 发布,翻译遵循 CC BY-SA 4.0 许可协议
我不知道有任何 JVM 会实际检查
JAVA_OPTS
环境变量。通常这用于启动 JVM 的脚本中,它们通常只是将它添加到java
命令行。这里要理解的关键是
-jar analyse.jar
位 之前 的java
的参数只会影响 JVM, 不会 传递给您的程序。因此,将脚本中的java
行修改为:应该“只是工作”。