InputStream in = BatchProperties.class.getClassLoader().getResourceAsStream(propertyFileName);
在linux系统 jar中有这段代码
但打印出in为:java.util.zip.ZipFile$1@19da4fc
请高手说明一下
windows下开发时 运行正常。打印出in为:java.io.BufferedInputStream@1e9cb75
------解决方案--------------------
问题是啥?没看懂。。。
你在生产环境下,资源文件被打包到JAR中去了,而JAR包就是用ZIP格式压缩的,所以得到的InputStream就是Zip的实现,很智能很好啊,有啥问题呢?
------解决方案--------------------
1.JDK的问题,InputStream 只是个接口。不是具体实现类
2.你传递参数问题,WINDOWS下的路径和LINUX下的路径符不一样。
标准情况下得到得结果就是你在WINDOWS下得到得结果一致,BUFFERDINPUTSTREAM,ZIPFILE肯定是错误的。你应该是想得到JAR包里面的一个配置文件的输入流。
------解决方案--------------------
------解决方案--------------------