繁体   English   中英

运行网页上基于Java(FX)制作的应用程序

[英]Run an application made on java(FX) on a webpage

我目前正在用javaFX编写游戏,并且我计划将其发布在我以后运行的网站中(在此期间结束利用广告)。 问题在于,经过一番搜索之后,似乎无法在浏览器上运行Java应用程序。

允许人们通过浏览器运行它确实有助于共享程序。

我的问题是:今天(2018年)是否可以通过网络运行Java应用程序? 尽管我喜欢Java,但没有浏览器支持似乎是一个非常非常糟糕的主意。

哦,我也听说过Java Web Start。 尽管看起来只是在避免问题(不在浏览器中运行),但这似乎是共享应用程序的好方法。 问题在于,似乎(不赞成?)已过时? 我很无助,就像java不再尝试了...

PS:如果有什么不同,我的游戏将是具有第三人称视角的2D游戏。 由于玩家会创建其他玩家可以挑战的“竞技场”,因此还需要一些服务器资源。 我会说我的游戏不会“简单”。

如果您愿意为代码签名证书付费,则Java Web Start可以很好地完成这项工作。 (它们比常规的SSL证书贵很多。)其想法是,用户单击页面上的超链接,这将导致用户的Java安装启动您的应用程序(可能在安装后)。 这要求用户事先安装Java。

如果您没有资源或不希望使用代码签名证书,则可以查看https://docs.oracle.com/javase/9​​/deploy/self-contained-application-packaging.htm 它允许您为JavaFX应用程序创建本机安装软件包。 缺点:您需要每个平台为其创建安装程序。 这意味着,您需要Windows来创建Windows安装程序,需要OS X来创建OS X安装映像,并且需要Linux来创建Linux软件包。 有些可能还需要使用本机工具进行签名。

Java的9包括JMODJLINK工具,其能够与一个可执行的shell脚本或.bat文件中创建一个文件树。 一个主要的优点是,如果在计算机上解压缩外部平台的JDK,则可以为任何平台构建这样的树,而与您自己的平台无关。 另一个优点是用户根本不需要安装Java。 缺点是该脚本需要终端,除非在Linux上运行。

当然,您可以手动进行操作并分发一个zip文件,其中包含您的.jar文件,您编写的Shell脚本和您编写的.bat文件。 它不优雅,但总比没有好。 但这可能会使一些非技术用户绊倒。

有很多工具可以从.jar文件创建本机可执行文件,但我对它们并不熟悉(我更喜欢避免使用第三方工具,除非它们确实必要)。

无论选择哪种方法,答案都是相同的:您在网页上分发了一些内容,供用户下载并运行。 除了下载过程之外,浏览器也不参与。

什么,你不能做的是让用户运行浏览器您的应用程序。 这已经过时了 ,理由很充分:这对于浏览器性能,Java运行时,安全性和用户体验来说都是一场灾难。 Firefox几乎拥有所有被禁止的插件,因此您将锁定相当一部分用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM