我正在尝试将 jar 文件中的类从 URL 加载到内存中,然后运行其中一个加载的类。我不希望用户可以访问类文件或 jar。我见过几个类似的问题,但没有得到答案。
我知道它可能会使用 URLClassLoader 和 ByteArrayInputStream/ByteArrayOutputStream。
提前感谢您的帮助。
类似未回答的问题:
我正在尝试将 jar 文件中的类从 URL 加载到内存中,然后运行其中一个加载的类。我不希望用户可以访问类文件或 jar。我见过几个类似的问题,但没有得到答案。
我知道它可能会使用 URLClassLoader 和 ByteArrayInputStream/ByteArrayOutputStream。
提前感谢您的帮助。
类似未回答的问题:
你走在正确的轨道上(我认为)。步骤是:
我无法指出示例代码,因为我找不到任何代码。
(您几乎必须将内容缓存在内存中,因为JarFile
API 需要 aRandomAccessFile
并且这意味着数据在文件系统中。在某些系统上,您可以创建一个临时文件,在其上打开一个 RAF,取消链接,然后获取并将 URL 写入 RAF。但这不是可移植的......)
我应该指出,如果您将此作为某些许可或“知识产权管理”计划的一部分,您可能是在浪费时间。您希望在客户端代码(即在用户机器上运行的代码)中实现的任何实用方案都可能被破坏......除非机器完全被锁定。