Java 如何导出PApplet以使其在浏览器中运行?

Java 如何导出PApplet以使其在浏览器中运行?,java,eclipse,applet,processing,Java,Eclipse,Applet,Processing,我有一个EclipseJava项目,其中我有一个src/demo包,其中包含一个处理演示,在扩展PApplet的单个类中。演示在Eclipse中运行良好 我希望演示这个软件包,最好是在web浏览器中。如果能够在Eclipse项目之外进行演示,我们将不胜感激 我尝试将包导出到JAR并将其嵌入到HTML文件中。Firefox似乎是唯一一款支持Java等NPAPI插件的现代主流浏览器(Chrome 46只显示灰色框,Safari 9显示空白页)。 Firefox一直抛出“未找到类/库”错误,直到我手动

我有一个EclipseJava项目,其中我有一个src/demo包,其中包含一个处理演示,在扩展
PApplet
的单个类中。演示在Eclipse中运行良好

我希望演示这个软件包,最好是在web浏览器中。如果能够在Eclipse项目之外进行演示,我们将不胜感激

我尝试将包导出到JAR并将其嵌入到HTML文件中。Firefox似乎是唯一一款支持Java等NPAPI插件的现代主流浏览器(Chrome 46只显示灰色框,Safari 9显示空白页)。
Firefox一直抛出“未找到类/库”错误,直到我手动将所有库复制到与JAR相同的目录中,并将它们包含在HTML中
applet
元素的
archive
属性中

现在Firefox显示了一个黑色的轮廓,但显示了一个空白的应用程序,这可能是因为我没有从Eclipse中的
data
文件夹复制资产。然而,我不知道如何将它们包括在罐子中

我试着跟随并简单地将
main()
添加到
PApplet
中,但当我将其导出为可运行JAR并尝试运行时,这给了我一个“未找到类错误”

系统信息:Mac OS X 10.11.0、Java 1.8.60


什么是系统化的方式来解决所有这些问题?

我认为回答你问题的最好方式是澄清你对你所经历的问题的一些困惑

首先,小程序几乎已经过时了。就像你提到的,它们在chrome中根本不起作用。让它们在其他浏览器中工作对您和最终用户来说都是件棘手的事。您必须为证书付费或让用户更改其Java安全设置

此外,从Processing 3开始,PApplet不再扩展小程序。因此,您不能简单地扩展PApplet并将其视为applet。(您忘了告诉我们您正在使用哪个版本的处理。)

老实说,最好的方法是忘记applet

如果您忘记了applet,那么您可以通过进入file->export将其部署为标准可执行文件,或者使用类似(完全公开:我编写了JarMatey)的方式将其部署为可运行的jar。重要的是要注意,仅仅向类中添加
main()
函数是不够的


但在我看来,部署处理草图的最佳选择是使用html5/JavaScript进行部署。这应该很容易,只要你不使用任何Java库。

在2015年尝试在浏览器中运行小程序,玩得开心吧……作为记录,Firefox也将很快禁用NPAPI,除了Flash。@immibis,的确……我愿意将其转换为普通Java应用程序,但我找不到任何示例,我使用的是Java库,所以Processing.js不是一个选项。然而,我刚刚意识到,要将其转换为Java应用程序,我所要做的就是添加一个main方法并调用一个helper使其作为应用程序运行。想弄清楚如何导出这个自动取款机。在导出到Runnable JAR时,我似乎一直遇到“找不到主方法”错误,即使它在Eclipse中作为应用程序运行良好。没关系,我删除了我以前发布的所有配置,现在导出工作非常出色