突然之间,在没有更改构建环境、gradle 文件或任何可以证明这一点的源代码更改的情况下,我的项目开始崩溃并出现以下错误:
java.lang.ExceptionInInitializerError
at org.fourthline.cling.transport.impl.AsyncServletStreamServerImpl.createServlet(AsyncServletStreamServerImpl.java:96)
at org.fourthline.cling.transport.impl.AsyncServletStreamServerImpl.init(AsyncServletStreamServerImpl.java:74)
at org.fourthline.cling.transport.RouterImpl.startAddressBasedTransports(RouterImpl.java:434)
at org.fourthline.cling.transport.RouterImpl.enable(RouterImpl.java:132)
at org.fourthline.cling.android.AndroidRouter.enable(AndroidRouter.java:92)
at org.fourthline.cling.UpnpServiceImpl.<init>(UpnpServiceImpl.java:87)
at org.fourthline.cling.android.AndroidUpnpServiceImpl$1.<init>(AndroidUpnpServiceImpl.java:54)
at org.fourthline.cling.android.AndroidUpnpServiceImpl.onCreate(AndroidUpnpServiceImpl.java:54)
at pl.qus.xenoamp.xenoservice.XenoUpnpService.onCreate(XenoUpnpService.java:104)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:2785)
at android.app.ActivityThread.access$1800(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1407)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:5317)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
Caused by: java.util.MissingResourceException: Can't find resource for bundle 'javax.servlet.LocalStrings_pl_PL', key ''
at java.util.ResourceBundle.missingResourceException(ResourceBundle.java:238)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:230)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:139)
at javax.servlet.GenericServlet.<clinit>(GenericServlet.java:95)
at org.fourthline.cling.transport.impl.AsyncServletStreamServerImpl.createServlet(AsyncServletStreamServerImpl.java:96)
at org.fourthline.cling.transport.impl.AsyncServletStreamServerImpl.init(AsyncServletStreamServerImpl.java:74)
at org.fourthline.cling.transport.RouterImpl.startAddressBasedTransports(RouterImpl.java:434)
at org.fourthline.cling.transport.RouterImpl.enable(RouterImpl.java:132)
at org.fourthline.cling.android.AndroidRouter.enable(AndroidRouter.java:92)
at org.fourthline.cling.UpnpServiceImpl.<init>(UpnpServiceImpl.java:87)
at org.fourthline.cling.android.AndroidUpnpServiceImpl$1.<init>(AndroidUpnpServiceImpl.java:54)
at org.fourthline.cling.android.AndroidUpnpServiceImpl.onCreate(AndroidUpnpServiceImpl.java:54)
at pl.qus.xenoamp.xenoservice.XenoUpnpService.onCreate(XenoUpnpService.java:104)
at android.app.ActivityThread.handleCreateService(ActivityThread.java:2785)
at android.app.ActivityThread.access$1800(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1407)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:211)
at android.app.ActivityThread.main(ActivityThread.java:5317)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1016)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:811)
在网上找不到太多相关信息,添加了对 javax serverlet 禁用构建的依赖项,提示此包中的重复文件。
目前,我必须禁用应用程序的 UPnP 功能才能克服此错误。请帮忙!
编辑:有趣的是 - 该错误仅发生在一种环境中构建的 apk 上,不会发生在另一种环境中。
最佳答案
Android 并不包含 java 的所有内容,例如,它只有 javax.* 的限制,您根本无法使用它。
编辑:
您可以在此处找到 android 的软件包列表。
关于javax.servlet.LocalStrings - 缺少资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32305605/