Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在java小程序上正确使用图像文件(gif)?_Java_Eclipse_Image - Fatal编程技术网

如何在java小程序上正确使用图像文件(gif)?

如何在java小程序上正确使用图像文件(gif)?,java,eclipse,image,Java,Eclipse,Image,我正在用Java(eclipse)编写一个游戏,我设法完全掌握了基本知识。我为游戏精灵使用了.gif文件,并用 Image java.applet.Applet.getImage(URL url, String name) 在eclipse下,我的代码运行得很好,但当我将小程序添加到可运行的JFrame上,或者将其嵌入到网站上时,它会爆发错误,最明显的是 access denied("java.io.filepermission read") 在感到非常沮丧并在我能找到的每个论坛和教程上搜索

我正在用Java(eclipse)编写一个游戏,我设法完全掌握了基本知识。我为游戏精灵使用了.gif文件,并用

Image java.applet.Applet.getImage(URL url, String name)
在eclipse下,我的代码运行得很好,但当我将小程序添加到可运行的JFrame上,或者将其嵌入到网站上时,它会爆发错误,最明显的是

access denied("java.io.filepermission read")
在感到非常沮丧并在我能找到的每个论坛和教程上搜索了几个小时之后,我遇到了一个叫做沙盒错误的东西,我已经读到它意味着小程序无法访问类所在文件系统上的图像


如果这就是我遇到的错误,小程序无法访问文件或图像(这对我来说似乎很愚蠢,那么小程序有什么意义?),那么如果我无法从文件加载图像,我如何在小程序中使用图像?或者更重要的是,我如何让我完美的无错误代码在eclipse之外运行,以便我可以“分发”它?

您可以检查服务器上存储的图像在哪里?哪些用户是这些图像的所有者,并且该用户与web服务器运行时所使用的用户不同?如果是这样的话,我会更改图像和图像所在目录的权限,以便它们包括对运行web服务器的用户的读取权限

在Stackvoerflow上也提出了类似的问题:


正如另一张海报所提到的,您似乎必须确保小程序已签名:

默认情况下,小程序无法访问本地文件系统。告诉您如何正确使用小程序中的图像。

当您说它工作正常时,您的意思是它在您的计算机上工作正常,并且网站是否驻留在除dev box之外的服务器上(即,当您被拒绝访问时,小程序是在另一台机器上运行的站点的一部分)?我的意思是当我运行eclipse并告诉它编译和运行时,没有错误,但当我尝试从嵌入式小程序(在本地保存的html文件上)运行它或将其添加到JFrame并作为可执行文件运行时,由于文件权限错误,它不会运行。您可以始终将图像存储在小程序代码库所在的主机上。这样就没有安全例外。否则,如果您仔细想想,这些图像将不会存在于访问小程序的每个人的机器上,对吗?即使没有沙箱,您当前的设置也无法工作。您有两种选择:1)在小程序代码库所在的服务器上托管映像,或2)在小程序jar中部署映像。您报告的各种内容都不符合要求。为了更快地获得更好的帮助,请发布一个。只要JRE识别出URL指向本地服务器,
Applet.getImage(..)
方法将适用于沙盒小程序。“它会因错误而爆炸,”复制/粘贴它们,而不是解释。我将图像存储在与类相同的目录中,例如:URL URL=getDocumentBase()。。。Image img=getImage(url,“whatever.gif”);我试着从本地html文件在同一个目录下运行我的HD,不去。试着从第二台电脑上用我的电脑访问它,没有成功。