【发布时间】:2012-04-05 02:25:35
【问题描述】:
是否可以让 Applet 使用本地 jar?
我的 Applet 应用程序需要有一些依赖项(66Mb 的 jars)。用户之前可以安装这些 jar,但我如何从小程序中使用它们?
我可以将它们保存到默认位置 c:/myApp 和 /usr/local/myApp
我尝试加载它们:
ClassLoader loader = URLClassLoader.newInstance(
new URL[]{new URL("file://" + path + "/xuggle-xuggler-5.2.jar")},
JNLP2Manager.getCurrentManager().getAppletClassLoader()
);
Thread.currentThread().setContextClassLoader(loader);
但是 jar 不会自动添加到类路径中,我的意思是,我仍然需要单独加载每个类。
做以下工作:
Class cls = loader.loadClass("com.xuggle.xuggler.video.ConverterFactory");
String testString = ConverterFactory.XUGGLER_ARGB_32;
但是我可以将所有类都添加到小程序加载器吗?
附:我知道我不应该使用 Applet ,但 Applet 仍然最适合我的应用程序。
【问题讨论】:
-
+1 提出一个有趣的问题,并提前提到您想坚持使用小程序。该应用程序是什么。这使得小程序非常适合? (看来您将不得不跳过一些障碍才能使其正常工作 - 请参阅 AlexR 的第 1 点。)您是否知道使用 Java Web Start 部署的小程序可以延迟下载 Jars(仅在需要时)?
-
这是一个非常严格的客户群,当它需要使用时,每个人都应该准备好立即开始,因为它是一个实时应用程序。我知道(1),但用户在实际使用该应用程序之前会有时间(安装)。所以,使 Applet 如此适合(我实际上开始使用 JWS)的一点是,该应用程序有多个选项卡,每个选项卡都是某种上下文。让用户在 Web 应用程序和本地应用程序之间切换,以便它可以选择当时他打算让小程序工作的上下文,这非常令人困惑。
标签: java applet signed-applet