0

我正在将 J9 规范 (wm50-arm-midp20_6.1.2.2) 用于在 windows mobile 上运行的 java 应用程序,并且遇到了需要创建文件的障碍。

我从 com.ibm.oti.connection.file.FileOutputStream 的 J9 构造函数中的这一行得到一个安全异常

  if (!com.ibm.oti.vm.VM.callerIsBootstrap())
        throw new SecurityException();

现在,大多数其他输出流类型都有一个支持 connection.java 类,通过该类发送调用,但没有一个支持文件流实现。

为了解决这个问题,我预计需要编写自己的 DLL 文件并从 java 代码中调用它,但我想知道是否有人遇到过这个问题并且能够解决它而无需调用本机 dll。

提前致谢!JR

4

1 回答 1

0

我找到了我的答案。

要解决此问题,您需要访问文件系统的任何类都必须位于 J9 文件夹下的 ext 文件夹中。

在我的情况下,我使用microlog作为我的日志记录解决方案,并正在寻找创建文件。我的应用程序 jar 不在 ext 文件夹中,所以我重新打包了所有内容,以便附加程序的 java 类位于 ext 文件夹中,以便 j9 jvm 将它们视为引导类。

如果有人有任何问题,请在评论中提出。

感谢所有看过这个的人。

于 2013-02-21T14:27:18.167 回答