Java小程序资源加载问题

标签 java applet

我刚刚将 Java Web Start 应用程序转换为小程序。加载时间比以前更长,因此我在控制台中启用了最高级别的日志记录。

该程序使用了存储在 .jar 文件中的大量资源。但是,它会尝试从 Web 服务器上的代码库下载其中一些!响应显然是404,但由于文件太多,仍然浪费很多时间。一旦所有内容最终加载,所有资源都会正常工作!为什么要这样做?我该如何让它停止?

资源加载代码:

public static BufferedImage loadImage(String name, String path) throws IOException
{
    URL url = AssetManager.class.getResource(path.replace("resource://", "resources/"));
    if(url == null)
        throw new IOException("Resource not found: "+path);

    BufferedImage image = ImageIO.read(url);
    images.put(name, image);
    return image;
}

最佳答案

我也观察到了这一点,但我不太确定如何避免插件从 HTTP 而不是 jar 加载类。您可以尝试使用 jar 索引(这样虚拟机就会知道哪个类/资源位于哪个 jar 中)。可能还有一些小程序标记或 JNLP 文件选项可以避免这种情况。

关于Java小程序资源加载问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5812227/

相关文章:

Java JApplet : Why aren't my components appearing on screen?

java - 使用 Applet 的 SessionID 进行日志验证。安全与否?

java - 对未签名的 Java 小程序可以做什么的限制?

Javacard 安全设计 : all smartcards the same public and private key a good idea?

javascript - 使用 Java rest api 在 javascript 中发布请求不起作用

java - 针对 HashMap 中的所有值查找值

java - 运行时依赖第三方?

java - 如何创建 B+ 树数据结构

java - Boyer-Moore 字符串搜索算法起始对齐

java - 在 Java 中从 XML 转换为 JSON