【问题标题】:How does HTML java applet finds its .jar?HTML java applet 如何找到它的 .jar?
【发布时间】:2013-09-04 05:58:26
【问题描述】:

我有这个代码:

document.write("<APPLET CODE='com/synergex/My.class' ARCHIVE='toc2.jar' ");

当我的“toc2.jar”与 HTML 在同一个文件夹中时 - 一切正常。

但是当我将“toc2.jar”放入另一个文件夹(“C:\MyJars”)时,我得到了ClassNotFoundException

我如何“告诉”浏览器在哪里寻找 jars?

我尝试将“C:\MyJars”或“C:\MyJars\toc2.jar”添加到我的CLASSPATH env 变量中,但没有成功。

【问题讨论】:

  • 有一个很好的library 可以动态地将小程序包含到网站中。也许这会有所帮助

标签: java javascript html applet classpath


【解决方案1】:

可能能够使用HTML base element 重定向代码库。

例如,给定以下BASE 声明和A 声明:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
   "http://www.w3.org/TR/html4/strict.dtd">
<HTML>
 <HEAD>
   <TITLE>Our Products</TITLE>
   <BASE href="http://www.aviary.com/products/intro.html">
 </HEAD>

 <BODY>
   <P>Have you seen our <A href="../cages/birds.gif">Bird Cages</A>?
 </BODY>
</HTML>

相对 URI "../cages/birds.gif" 将解析为:

http://www.aviary.com/cages/birds.gif

如果没有,只有2个选项。

  1. 将 Jar 保留在与 HTML 相同的目录中。
  2. 假设脚本的那部分是您唯一无法更改的内容,请在其后立即添加 codebase='../path/',以告知 JRE jar 所在的位置。

顺便说一句:

CODE='com/synergex/My.class'

应该是:

CODE='com.synergex.My'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-12
    • 2015-03-29
    • 2012-11-13
    • 2011-12-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多