我有一个大型应用程序开始接收
MissingResourceException:无法找到基本名称sun.text.resources.FormatData,locale en_US
的包
错误来自我的代码
java.text.DecimalFormatSymbols.getInstance(Locale.US);
此代码有效,直到发生不明确的事情,我们开始在每次调用,此处以及其他加载资源的地方获得此异常。
重置应用程序会解决问题一段时间,直到发生这种情况,因此它不是类路径问题
该应用程序相当广泛并且使用其他方面 sandbox https://sourceforge.net/projects/javasandboxlibrary/和javax.tools.JavaCompiler从用户编译代码并在安全设置下运行,目前系统仍在开发中,所以它不是一些黑客攻击但我们不知道它可以是什么
当系统运行时,许多java进程在同一个java安装上启动和关闭,这可能会导致一些问题?
任何建议都可能有所帮助
这是完整的堆栈跟踪
java.util.MissingResourceException: Can't find bundle for base name sun.text.resources.FormatData, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
at java.util.ResourceBundle.getBundleImpl(Unknown Source)
at java.util.ResourceBundle.getBundle(Unknown Source)
at sun.util.resources.LocaleData$1.run(Unknown Source)
at sun.util.resources.LocaleData$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.util.resources.LocaleData.getBundle(Unknown Source)
at sun.util.resources.LocaleData.getNumberFormatData(Unknown Source)
at sun.util.locale.provider.LocaleResources.getDecimalFormatSymbolsData(Unknown Source)
at java.text.DecimalFormatSymbols.initialize(Unknown Source)
at java.text.DecimalFormatSymbols.<init>(Unknown Source)
at sun.util.locale.provider.DecimalFormatSymbolsProviderImpl.getInstance(Unknown Source)
at java.text.DecimalFormatSymbols.getInstance(Unknown Source)
at queryBuilder.utils.LanguageSymbolsAppender.setLanguageSymbols(LanguageSymbolsAppender.java:16)
LanguageSymbolsAppender.setLanguageSymbols是我的代码
DecimalFormatSymbols.getInstance(locale)