StackOverflowError 使用 Nashorn 分析 pac 代理文件
StackOverflowError using Nashorn to analyze pac proxy file
由于我使用的标准 Java 代理检测错误
nashorn 获取特定 url 的代理
一个 proxy.pac 文件(适用于 IE 和 Firefox)。
我在这段代码中遇到 WhosebugError:
while (retrycounter < 50) {
try {
engine.eval(myscript);
break;
} catch (WhosebugError e) {
retrycounter ++;
}
}
奇怪的是,当我 运行 这段代码处于调试模式时,它起作用了,当我
在 engine.eval(myscript) 下断点;并跨过调试器。
pac 文件很大 - 900 行。
我在文件中有很多 shExpMatch(.....) 行。
当我删除第 400-600 行时,我的脚本也在非调试模式下工作。
当我删除 400-500 行时,它不起作用。
当我删除第 500-600 行时,它不起作用。
Nashorn 引擎是否与我的文件大小有关?
我没有 post 更多代码,因为它在调试模式下工作,当我缩小文件时。
问题存在,使用Java 1.8.0_73。
使用 1.8.0_77 和 1.8.0_91 它可以工作。
是否可以 运行 旧版本中的脚本?
也许通过对引擎的设置?
此致
相同的代码适用于较新的 java 版本。
1.8.0_91(我认为 1.8.0_7xx 也有效,但不确定)。
由于我使用的标准 Java 代理检测错误 nashorn 获取特定 url 的代理 一个 proxy.pac 文件(适用于 IE 和 Firefox)。
我在这段代码中遇到 WhosebugError:
while (retrycounter < 50) {
try {
engine.eval(myscript);
break;
} catch (WhosebugError e) {
retrycounter ++;
}
}
奇怪的是,当我 运行 这段代码处于调试模式时,它起作用了,当我 在 engine.eval(myscript) 下断点;并跨过调试器。
pac 文件很大 - 900 行。 我在文件中有很多 shExpMatch(.....) 行。
当我删除第 400-600 行时,我的脚本也在非调试模式下工作。 当我删除 400-500 行时,它不起作用。 当我删除第 500-600 行时,它不起作用。
Nashorn 引擎是否与我的文件大小有关?
我没有 post 更多代码,因为它在调试模式下工作,当我缩小文件时。
问题存在,使用Java 1.8.0_73。 使用 1.8.0_77 和 1.8.0_91 它可以工作。
是否可以 运行 旧版本中的脚本? 也许通过对引擎的设置?
此致
相同的代码适用于较新的 java 版本。 1.8.0_91(我认为 1.8.0_7xx 也有效,但不确定)。