java - Java 翻译反射调用程序的文件 API 路径
问题描述
我正在尝试在 Java 中实现类似虚拟机的东西。是的,它需要用 java 制作,因为它包装了一些已经编码的 java 库并实现了它的抽象。但就问题...
实际的问题是它旨在运行为在 UNIX 平台上运行而编写的 java 程序(例如,它们需要登录到 /var/log)。我可以加载 jar,并通过调用 main 方法启动它......但真正的问题在于,每当文件尝试访问文件系统时,它就会崩溃,因为文件系统的格式不正确(例如,它缺少 /var/volatile因为它通常用于嵌入式系统,但很少用于完整的桌面)。我正在寻找一种解决方案,将默认的 Java java.nio.File 抽象路径名转换为其他位置,或者在文件中创建虚拟 FS(如循环设备),或任何类似的东西,就像程序的 chroot 一样。我在网络上找不到这个问题的单一灵魂。其背后的真正原因是允许任何平台的用户运行虚拟机无需修改在 VM 中运行的程序的源代码。
非常感谢。
解决方案
推荐阅读
- java - 正则表达式匹配一个字符串,如果它只匹配 Java 中的一个组
- javascript - 我如何将 CSS 属性作为 Javascript 赋予克隆元素?
- amazon-web-services - 在分布式 WebApp 中的哪里存储初始化属性?
- gulp - “ events.js:174 throw er; // Unhandled 'error' event” gulp 错误消息的原因是什么?
- mysql - 表列有值,但执行 SELECT * FROM t_order 后,一些返回结果为空
- javascript - 为什么 onsubmit 事件有效但 addEventListener 无效?
- javascript - 了解方案中的折叠和减少功能
- c++ - 如何使用 mpi scatter 修复“矢量下标超出范围”?
- angular - 刷新后页面变了
- c - 如何在 C 中调用带有“int”参数的函数?