gpt4 book ai didi

java - 适当的浏览器嵌入JavaFX应用程序部署是什么样的?

转载 作者:太空宇宙 更新时间:2023-11-04 12:39:01 25 4
gpt4 key购买 nike

我试图部署JavaFX应用程序意图嵌入到浏览器中。

我已完成以下步骤:

1. javapackager -createjar -outdir编译-outfile myapp -appclass MyApp -srcdir bin
 1. javapackager -deploy -outdir部署-outfile outfile -width 400 -height 400 -name AppName -appclass MyApp -srcdir编译

然后,我尝试运行创建的JNLP文件,但下面出现异常:

java.lang.ClassNotFoundException: MyApp
at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at sun.plugin2.applet.Plugin2ClassLoader.findClassHelper(Unknown Source)
at sun.plugin2.applet.JNLP2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


因此,我尝试通过以下步骤解决此问题:

A)我试图对jar文件签名。

B)我试图在JNPL文件中指定这个jar是主要的jar;

<resources>
<j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/>
<jar href=".\myapp.jar" size="3229" download="null" main="true"/>
</resources>


C)如我所见,我已将javapacker的参数appclass更改为application.MyApp。

D)然后我再次尝试了步骤1-3。

E)而且在两种情况下,我都曾在将jar签名之前尝试将其标记为main。

在每种情况下都是例外。

如果我以经典方式编译jar – jarsigner myapp.jar * .class allLastingFiles –应用通常是runnig。如果签名,此jar也通常可以使用。

整个JNLP看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0" xmlns:jfx="http://javafx.com" href="myapp.jnlp">
<information>
<title>AppName</title>
<vendor>Unknown</vendor>
<description>AppName</description>
<offline-allowed/>
</information>
<resources>
<j2se version="1.6+" href="http://java.sun.com/products/autodl/j2se"/>
<jar href=".\myapp.jar" size="3229" download="null" />
</resources>
<jfx:javafx-desc width="400" height="400" main-class="MyApp" name="AppName" />
<update check="background"/>
</jnlp>


我已经尝试过Google,但不确定要搜索什么。

最佳答案

问题解决了。我出于未知原因打包在jar源文件中,而不是二进制文件中。

关于java - 适当的浏览器嵌入JavaFX应用程序部署是什么样的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37019559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com