NanoHttpd SimpleWebServer在静态构造函数上崩溃

时间:2015-12-09 07:40:22

标签: java android nanohttpd


目前我需要Android应用中的本地http文件服务器,我决定使用NanoHttpd SimpleWebServer。但我遇到了这样的例外:

$str =~ s/(^[0-9]+\/)/$1\//;

崩溃部分实际上是静态构造函数

java.lang.NullPointerException: Attempt to invoke virtual method 'int java.io.InputStream.read(byte[])' on a null object reference
        at fi.iki.elonen.SimpleWebServer.<clinit>(SimpleWebServer.java:83)

显然,库正在尝试加载某些许可证文件但是失败了。因此,服务器未创建且未启动。
有人知道如何克服这个问题吗?提前致谢!

(我使用Android Studio 1.5.1并通过gradle依赖static { mimeTypes(); InputStream stream = SimpleWebServer.class.getResourceAsStream("/LICENSE.txt"); ByteArrayOutputStream bytes = new ByteArrayOutputStream(); byte[] buffer = new byte[1024]; int count; String text; try { while ((count = stream.read(buffer)) >= 0) { bytes.write(buffer, 0, count); } text = bytes.toString("UTF-8"); } catch (IOException e) { text = "unknown"; } LICENCE = text; } 包含库)

1 个答案:

答案 0 :(得分:1)

没有创建Seams InputStream。可能是因为类加载器无法找到LICENSE.txt或者没有足够的权限。