【发布时间】:2013-10-07 00:05:12
【问题描述】:
我刚刚编写了一个与血液机器对话的 java 应用程序。它使用 OAuth 安全性和 XML 将其数据发布到 Web 服务器,并且该应用程序运行良好。
但现在我需要将它分发给拥有这些机器的客户。该程序位于 .jar 文件中,它还需要我的 project/dist 文件夹中的其他 .jar 文件。
在执行过程中,它使用了一些 .png 文件,这些文件在屏幕上显示为图标,用户可以点击等。
我想知道如何将所有这些(包括图像)包装在一起并通过安装程序分发它们,或者我可以使用 Web 服务器。
最好的方法是什么,我尝试复制 .jar 和 dist 文件夹(根据 netbeans 的说明),但是当我运行 java -jar myfile.jar 时,它会打印出我的文本来自 IOException 因为我没有包含 .png 文件。
PNG 文件的代码: 我正在使用这个:
try
{
databaseimage = ImageIO.read(new File("image/database.png"));
databaseDisconnectedImage = ImageIO.read(new File("image/database_delete.png"));
}
catch (IOException ioe)
{
System.out.println("Problem Creating Systray: "+ioe.getMessage()+" Current Working Directory is: "+System.getProperty("user.dir"));
}
【问题讨论】:
-
PNG 加载的答案在于打开文件的方式。看看这个问题:stackoverflow.com/questions/403256/…
-
显然我知道我可以包含图像文件夹。但我想分发这个应用程序。最好的方法是什么?
-
.png 文件属于你的 jar。您可以使用返回 URL 的 Class.getResource 方法访问它们,然后将该 URL 传递给 ImageIO.read(URL)。
标签: java