【问题标题】:java.util.MissingResourceException: Can't find bundle for base name javax.servlet.LocalStringsjava.util.MissingResourceException:找不到基本名称 javax.servlet.LocalStrings 的包
【发布时间】:2017-11-10 16:34:00
【问题描述】:

我有一个使用 multidex 的 Android 应用。它已发布,每月拥有数十万用户。每隔一段时间,我就会在 Crashlytics 上收到 ExceptionInInitializerError 崩溃。我从来没有能够复制它们。

我读到这可能是由于 multidex 并且在我的配置中有 multiDexKeepFile file('multidex-config.txt') 和类列表会有所帮助,但它似乎没有帮助,至少对于这个资源没有帮助。这是我multidex-config.txt上的内容:

org.eclipse.jetty.http.MimeTypes
org.eclipse.jetty.server.Server
javax.servlet.LocalStrings

这些都是我过去遇到过类似崩溃的所有课程。我仍在等待其中一些是否已修复,但下面的这个肯定会再次出现:

Fatal Exception: java.lang.ExceptionInInitializerError
       at myapp.run(myclass.java:986)
       at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
       at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
       at java.lang.Thread.run(Thread.java:761)
Caused by java.util.MissingResourceException: Can't find bundle for base name javax.servlet.LocalStrings, locale it_IT
       at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1501)
       at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1324)
       at java.util.ResourceBundle.getBundle(ResourceBundle.java:723)
       at javax.servlet.GenericServlet.(GenericServlet.java)

那么我该如何解决这个问题?在这种情况下,它似乎正在寻找意大利文件,但情况并非总是如此,而且我在意大利有很多用户,所以我不确定为什么它只是崩溃了一些。 Android Studio 上LocalStrings 的资源包只显示一个默认的,法语和日语。

谢谢。

【问题讨论】:

  • 我猜你已经试过this了,对吧?
  • 我不确定我应该在那里尝试什么。我自己实际上并没有添加资源,它来自 gradle 上的编译行,如果我查看我的库,我可以看到资源。就像我说的,这对我的大多数用户来说都很好,只有少数人会失败。

标签: java android android-multidex


【解决方案1】:

确保您没有错过添加 servlet-api 依赖项。

如果您使用的是 maven,请确保此依赖项存在于您的项目中:

<dependency>
  <groupId>javax.servlet</groupId>
  <artifactId>javax.servlet-api</artifactId>
  <version>3.1.0</version>
</dependency>

【讨论】:

  • 我拥有它,我的 servlet 是我的应用程序的关键部分,它每个月都能为数十万用户正常工作。只有少数用户会收到该错误。
  • 您是否检查过该用户的基本名称不为空或缺少某些参数,因为它说 **Can't find bundle for base name **
  • 不完全确定我理解,但错误与我在帖子中粘贴的完全一样。 Can't find bundle for base name javax.servlet.LocalStrings, locale it_IT。我什至见过US
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-01-01
  • 2012-10-11
  • 2012-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多