VLCJ Java Applet将无法加载

时间:2012-08-21 15:45:26

标签: java applet vlcj

我正在尝试将vlcj应用程序编译为java applet。我有vlcj在/lib中运行所需的3个jar文件。我的班级档案在/src。在eclipse中,applet在applet查看器中运行良好。但是当我打包jar文件并加载我的测试html页面时。什么都没发生!我知道applet需要签名,因为java applets的沙盒。并签署了applet,但我肯定一定做错了。

以下是我的步骤:

1)因此,首先要创建applet,然后将.java文件编译为.class文件并将.class文件存储在/bin.

javac -cp lib/vlcj-2.1.0.jar:lib/platform-3.4.0.jar:lib/jna-3.4.0.jar Test.java

2)然后我用

创建我的jar文件

jar cvf Test.jar lib/* Test.class

3)然后,我使用keytool

生成密钥

4)然后,我使用Test.jarjarsigner文件进行签名,以生成SignedTest.jar

5)然后我将公钥导出到证书

6)然后将该证书导入为可信证书。

My Test html页面用以下命令打开java applet:

<applet code="bin/Test.class" archive="SignedTest.jar” width=200 height=200>

这些步骤中的任何一个都是错误的吗?我错过了一两个舞台吗? 还有奖金问题?谁知道如何在Linux中获得控制台输出?

---编辑---

这是Signed Jar File的结构。

   703 Wed Aug 22 09:25:16 BST 2012 META-INF/MANIFEST.MF
   908 Wed Aug 22 09:25:16 BST 2012 META-INF/SIGNFILE.SF
   782 Wed Aug 22 09:25:16 BST 2012 META-INF/SIGNFILE.DSA
   500 Wed Aug 22 09:06:28 BST 2012 Test$1.class
  1448 Wed Aug 22 09:06:28 BST 2012 Test.class
    40 Tue Aug 14 11:36:48 BST 2012 Notes
1008730 Tue Jul 10 13:15:48 BST 2012 lib/jna-3.4.0.jar
913436 Tue Jul 10 13:15:48 BST 2012 lib/platform-3.4.0.jar
278211 Tue Jul 10 13:15:48 BST 2012 lib/vlcj-2.1.0.jar
   371 Tue Jul 10 13:23:54 BST 2012 .project
   351 Tue Jul 10 13:16:18 BST 2012 .classpath

2 个答案:

答案 0 :(得分:1)

也许Test.class永远不会被添加到.jar文件中?因为Eclipse将.class文件放入/bin/Test.class,并且您尝试添加/Test.class

要检查,请尝试

    jar tvf Test.jar

在第2步之后。

尝试使用Eclipse创建Jar。档案|出口| Java | Jar文件。

答案 1 :(得分:1)

java.lang.NoClassDefFoundError: uk/co/caprica/vlcj/component/EmbeddedMediaPlayerComponent.

需要将包含uk.co.caprica.vlcj.component.EmbeddedMediaPlayerComponent的Jar添加到applet的运行时类路径中。这是通过archive元素的applet属性实现的。它应该是applet所需的以逗号分隔的Jars列表。基于编译细节并假设它们都与HTML在同一目录中,可能会导致这个applet元素。

<applet 
    code="Test" 
    archive="SignedTest.jar,vlcj-2.1.0.jar,platform-3.4.0.jar,jna-3.4.0.jar" 
    width=200 
    height=200>
</applet>