假设我有一个 java 进程,它以字节 [] 的形式从受信任进程接收可运行的 jar 文件,有没有办法调用它而不必将 jar 文件写入磁盘然后调用它(启动一个新的运行 jar 的进程)?
问问题
844 次
2 回答
8
这是您可以完成它的一种方法:
ByteArrayInputStream
从byte []
收到的创建一个。现在用于
JarInputStream
创建 jar 文件的内存表示。ByteArrayInputStream bis = new ByteArrayInputStream(byteArray); JarInputStream jis = new JarInputStream(bis);
这样你就可以将 jar 加载到内存中。
- 现在您可以使用自定义类加载器来进一步处理它。这是您可以参考的一个示例。
于 2012-09-04T09:21:40.593 回答
2
最简单的方法是将其写入 ramdisk 并完全避免内存中的想法。
于 2012-09-04T09:06:30.130 回答