我在一个小程序中工作。它与 Eclipse 完美配合,但当我尝试从控制台运行时,它给了我这个堆栈跟踪:
C:\Course Technology\src>appletviewer TestJAlienHunt.html
Path for file entered D:\Course Technology\AssignmentFinal\scoreFile.txt java.security.AccessControlException: access denied ("java.io.FilePermission" "D:\Course Technology\AssignmentFinal\scoreFile.txt" "read")
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:366)
at java.security.AccessController.checkPermission(AccessController.java:555)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:549)
at java.lang.SecurityManager.checkRead(SecurityManager.java:888)
at sun.nio.fs.WindowsPath.checkRead(WindowsPath.java:792)
at sun.nio.fs.WindowsFileSystemProvider.checkAccess(WindowsFileSystemProvider.java:360)
at java.nio.file.Files.exists(Files.java:2311)
at ReadFile.fileExists(ReadFile.java:47)
at JAlienHunt.readScore(JAlienHunt.java:187)
at JAlienHunt.init(JAlienHunt.java:73)
at sun.applet.AppletPanel.run(AppletPanel.java:434)
at java.lang.Thread.run(Thread.java:722)
文件有读写权限,为什么会这样?
最佳答案
小程序需要经过您的数字签名并得到最终用户的信任,然后才能访问用户计算机上的本地文件系统。
我突出显示用户的计算机,因为那是任何文件
都等同的地方。没有获取指向服务器的 File
的选项。如果这是只读的并且服务器托管资源,则通过 URL
访问它。
关于java - 由于文件的原因,控制台不允许我的小程序运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16096508/