我必须执行一个.jar,在执行之前我需要使用ulimit,所以我编写了一个shell脚本:

#!/bin/sh
ulimit -S -c unlimited
/usr/java/jre1.8.0_91/bin/java -jar /home/update.jar

但是ulimit似乎被忽略了,因为我有一个错误:
java.lang.internalerror:java.io.filenotfoundexception:/usr/java/jre1.8.0_91/lib/ext/localedata.jar(打开的文件太多)

最佳答案

如果要更改最大打开的文件,则需要使用ulimit -n
例子:

ulimit -n 8192

-c选项正在更改核心文件大小(核心转储),而不是最大打开文件。
您需要将ulimit应用到将调用java应用程序的shell。

关于linux - 为什么在 shell 程序中忽略了我的ulimit设置?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38070989/

10-13 06:39