首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何将jar添加到applet中?

如何将jar添加到applet中?
EN

Stack Overflow用户
提问于 2014-04-29 22:28:19
回答 2查看 412关注 0票数 0

我有JApplet,它使用一些罐子。我已经将这些jar添加到我的applet的lib文件夹中,并将它们设置为classpath并创建了html:

代码语言:javascript
运行
复制
<HTML>
  <HEAD>
    <TITLE>Applet</TITLE>
  </HEAD>
  <BODY>
    <H1>Applet</H1>
    <object classid="java:com.csat.CSATApplet.class" 
        type="application/x-java-applet"
        archive="file:///C:\\Documents and Settings\\alburash\\Desktop\\CSAT_client_2.jar" 
        height="300" width="450" >
    <PARAM NAME=ARCHIVE VALUE="dom4j-1.6.1.jar,poi-3.10-FINAL-20140208.jar,poi-excelant-3.10-FINAL-20140208.jar,poi-ooxml-3.10-FINAL-20140208.jar,poi-ooxml-schemas-3.10-FINAL-20140208.jar,poi-scratchpad-3.10-FINAL-20140208.jar,stax-api-1.0.1.jar,xmlbeans-2.3.0.jar,axis.jar,commons-discovery-0.2.jar,javax.wsdl_1.6.2.v201012040545.jar,jaxrpc.jar,org.apache.commons.logging_1.1.1.v201101211721.jar,org.apache.xmlrpc_3.0.0.v20100427-1100.jar,saaj.jar">
    </object>
     </BODY>
</HTML>

但是当我启动这个html时,我看到了错误"java.lang.NoClassDefFoundError:javax/xml/rpc/Service".我知道applet找不到这个类,但是为什么会这样呢?当我通过Eclipse启动applet时,它工作正常。所有需要的库都放到了"lib“文件夹中的CSAT_client_2.jar中,类路径是正确的,找到了CSATApplet.class (这是我之前的问题)。

它是未签名的小应用程序。

对于斯蒂芬C:我已经尝试更改html,但小程序找不到CSATApplet.class,也无法启动。当我使用我的第一个html时,小程序发现CSATApplet.class没有问题并启动了,但在那之后我看到了我的第一个错误。我的主要问题是我可以启动applet,但是applet找不到包含所需库的jar文件。

代码语言:javascript
运行
复制
<HTML>
  <HEAD>
    <TITLE>Applet</TITLE>
  </HEAD>
  <BODY>
    <H1>Applet</H1>
    <object classid="java:com.csat.CSATApplet.class" 
        type="application/x-java-applet"
        codebase="file:///C:/Documents%20and%20Settings/alburash/Desktop/CSAT_client_2.jar" 
        height="300" width="450" >
     </object>
     </BODY>
</HTML>

此外,当我在Eclipse中启动小程序时,我看到警告,但小程序启动并正常工作:"Apr 30,2014 2:09:06 PM org.apache.axis.utils.JavaUtils isAttachmentSupported警告:无法找到所需的类(javax.activation.DataHandler和javax.mail.internet.MimeMultipart)。附件支持被禁用。“

EN

回答 2

Stack Overflow用户

发布于 2014-04-29 23:11:44

根据HTML4.0.1规范section 13.3,"archive“属性是由空格分隔的URL列表。这意味着它是组成applet类路径的JARS的URL列表。

考虑将所有JAR放到一个目录中,并使用"codebase“属性,这样您就可以在"archive”URL列表中使用相对URL。

您的"file:“URL格式不正确。格式良好的Windows“文件:”URL如下所示:

代码语言:javascript
运行
复制
    file://laptop/My%20Documents/FileSchemeURIs.doc

代码语言:javascript
运行
复制
    file:///C:/Documents%20and%20Settings/davris/FileSchemeURIs.doc

请注意:

  • 分层URL中的路径分隔符是"/",而不是"\“或"\",
  • 任何空格字符都需要进行%转义。

最后,我在规范中或在支持使用<param name='archive' ... >元素指定小程序类路径的小程序的Oracle页面中找不到任何理由。

参考资料:

  • File URLs in Windows
票数 1
EN

Stack Overflow用户

发布于 2014-04-29 22:41:08

您可以使用applet标签:

代码语言:javascript
运行
复制
<applet codebase="."
        code="com.csat.CSATApplet.class"
        archive="CSAT_client_2.jar,dom4j-1.6.1.jar,poi-3.10-FINAL-20140208.jar,poi-excelant-3.10-FINAL-20140208.jar,poi-ooxml-3.10-FINAL-20140208.jar,poi-ooxml-schemas-3.10-FINAL-20140208.jar,poi-scratchpad-3.10-FINAL-20140208.jar,stax-api-1.0.1.jar,xmlbeans-2.3.0.jar, axis.jar,commons-discovery-0.2.jar,javax.wsdl_1.6.2.v201012040545.jar,jaxrpc.jar,org.apache.commons.logging_1.1.1.v201101211721.jar,org.apache.xmlrpc_3.0.0.v20100427-1100.jar,saaj.jar"
        height="300"
        width="450">
</applet>

通过这种方式,HTML页面和JAR文件必须位于同一目录中

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23367567

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档