【发布时间】:2012-06-26 20:19:07
【问题描述】:
请询问您是否需要更多信息。我有安全和所有权限标签 在我的 jnlp 中,当我离线运行我的 java 应用程序时,它可以正常工作。
File T = new File(System.getProperty("user.home") + File.separator + ".myapp/");<br />
if(!T.exists())
T.mkdirs();
File[] temp=new File[2];
temp[0] = new File(System.getProperty("user.home") + File.separator +
".myapp"+File.separator+"temp1.txt");
temp[1] = new File(System.getProperty("user.home") + File.separator +
".myapp"+File.separator+"temp2.txt");
writer=new BufferedWriter(new FileWriter(temp[x]));
writer.write(finalData);
writer.close();
我使用以下方法写入我想在用户系统目录中创建的文件。在程序中,我还从同一个文件夹中读取数据,当我将测试数据放在该文件夹中时,它可以正常工作。当我删除 temp1.txt 和 temp2.txt 文件时,它不会读取任何数据。没有错误消息出现或任何东西。
重申一下,当在 java web start 中运行时,会弹出窗口并且程序正常运行,没有错误消息,但它没有将文件正确写入用户系统。同时,在.txt文件中提供测试数据时,它会正确读取。
编辑:如果可能的话,是否有不使用某些 javaw.jnlp.* 方法的解决方案?该程序确实必须有一个包含 .txt 文件的文件夹才能从中读取
edit2:我所有的罐子也都签名了
【问题讨论】:
-
您的策略文件是什么样的?
-
什么是策略文件?我什至不知道我是否有一个
-
JNLP 可以使用策略文件或
<security>块来概述允许应用程序在主机上执行的操作。查看docs.oracle.com/javase/6/docs/technotes/guides/javaws/… 或forums.oracle.com/forums/thread.jspa?messageID=9673721 了解一些信息。 -
等等……不过既然我已经有安全块了,不会不看策略文件吧?
-
是的。
标签: java file local jnlp java-web-start