托管 Java Web Start 应用程序以包含在 Linux 发行版中

     2023-03-04     32

关键词:

【中文标题】托管 Java Web Start 应用程序以包含在 Linux 发行版中【英文标题】:Hosting Java Web Start application for inclusion into Linux distros 【发布时间】:2010-11-12 00:36:47 【问题描述】:

我编写了一个 Java 免费软件(封闭源代码)产品,我将其部署在 Web 主机上并通过 JNLP(包括 Linux 客户端)进行分发。

如果可能的话,我计划建议将此产品包含在几个 Linux 发行版中,“按原样”(基于 JNLP)。

我是否可以联系发行版,或者我需要重新配置某些东西(在另一台主机上部署,将 JNLP 转换为某些东西等)?你的经验是什么?

【问题讨论】:

【参考方案1】:

一般来说,Linux 发行版对无法集成到发布计划中的东西不太感兴趣。由于 JNLP 允许您随时部署新版本,因此他们无法在发布前进行版本冻结。这会将您排除在大多数发行版之外 - 出于这个原因,Debian 甚至删除了 Adob​​e 的 flash 插件,如果他们要删除 Flash,不要指望他们会为不太知名的应用程序例外。

如果你愿意将它作为一个普通的 .jar 分发,你可能能够得到它 - 对于 debian,你会想要阅读 Debian New Maintainer's Guide 和 Debian Policy 以了解如何打包东西, submit an ITP(打算打包),upload a package,然后在debian-mentors mailing list 上寻求赞助。更多信息可以在Debian mentors FAQ 找到。提交给 Debian 的软件包也将在适当的时候进入 Ubuntu。

当然,其他发行版会有不同的政策;如有疑问,请查看他们的常见问题解答,或在适当的邮件列表中询问相关发行版。

【讨论】:

由于我的产品包含许多第三方 jars(Apache 和 LGPL 许可证),我不确定我是否可以合法地将其打包到一个 jar 中。 它不需要是-single-jar,但它需要是自包含的,运行时不需要下载主要组件。【参考方案2】:

Java 程序往往很难打包和维护。因此,指南因发行版而异。因此,您应该先查看一些流行发行版的具体指南。 除此之外:独立于包管理器进行自我更新的所有内容对于包的用户和维护者来说都是非常痛苦的,因此您应该考虑将不同的分发模型包含在 linux 发行版中。

【讨论】:

我不是反对者,但我相信单包 Java 程序并不比任何其他程序更难打包和维护。 许多打包者不确定将 shell 脚本或配置文件放在哪里。有时您甚至会看到安装在 /opt 或 /usr/share 中的 JDK。有时两个地方都有不同的版本。这扩展到更简单的程序。困难不是技术性的,而是需要打包者做出更多的决定。【参考方案3】:

我会说免费 JNLP 应用程序与 Linux 发行版倾向于包含的应用程序完全相反。

首先,JNLP 不适用于本机包管理解决方案。如果您想将应用程序包含在发行版中,则需要以本机格式打包并以标准方式进行更新。

其次,大多数发行版都支持开源软件包,并且许多发行版不会在其默认存储库中包含非开源软件包。某些发行版可能具有特定的非免费存储库。在 OpenJDK 之前,您甚至可能连 Java 本身都不在这些存储库中。

在我看来,您最好尝试自己建立用户群,因为这样您就可以完全控制发布等。

【讨论】:

【参考方案4】:

找出一种方法在您想要包含软件的每个平台上正确打包它,并为严格的软件管理(冻结、多个版本等,如果您希望将代码包含在标准安装中)做好准备。

否则,您可以创建一个简单的包,只包含指向 JNLP 页面的链接,该页面可能包含在非核心部分中。值得一试。

我们在谈论什么应用程序?

【讨论】:

个人组织者:待办事项、提醒、计划、联系人、研究链接等 - 您可以在 www.golden-rules.org 找到更多信息。我喜欢通过链接到我的页面的非核心包含选项 - 将其作为首选。

在 S3 + Cloudfront 上以相同的 URL 托管多个 SPA Web 应用程序

】在S3+Cloudfront上以相同的URL托管多个SPAWeb应用程序【英文标题】:HostingmultipleSPAwebappsonS3+CloudfrontundersameURL【发布时间】:2019-05-1014:23:03【问题描述】:我有两个静态Web应用程序(create-react-apps),它们当前位于两个单独的S3存储桶... 查看详情

如何通过 firebase 托管在 firebase 上托管 node.js Web 应用程序(包含多个文件夹)?

】如何通过firebase托管在firebase上托管node.jsWeb应用程序(包含多个文件夹)?【英文标题】:howtohostnode.jswebapp(containingmultiplefolders)onfirebasethroughfirebasehosting?【发布时间】:2019-07-2508:30:00【问题描述】:我已完成所有Firebase托管流... 查看详情

如何正确格式化 app.yaml 以使用 PHP 后端托管 Flutter Web 应用程序

】如何正确格式化app.yaml以使用PHP后端托管FlutterWeb应用程序【英文标题】:Howtoproperlyformatapp.yamltohostFlutterwebappwithPHPbackend【发布时间】:2020-08-2015:12:58【问题描述】:我正在尝试为带有php后端的FlutterWeb应用程序创建一个.yaml文件... 查看详情

java web 应用程序的最佳托管是啥? [关闭]

】javaweb应用程序的最佳托管是啥?[关闭]【英文标题】:whatisthebesthostingforjavawebapplication?[closed]javaweb应用程序的最佳托管是什么?[关闭]【发布时间】:2011-05-1612:17:18【问题描述】:JavaWeb应用程序的最佳托管是什么?AmazonEc2-太... 查看详情

如何在自托管 Web API 应用程序中配置 OData 端点

】如何在自托管WebAPI应用程序中配置OData端点【英文标题】:HowtoconfigureODataendpointinaself-hostedWebAPIapplication【发布时间】:2015-07-1022:41:24【问题描述】:我正在构建OWIN自托管WebAPI2服务。我需要此服务公开OData端点。传统的IIS托管... 查看详情

设置虚拟主机文件以托管来自远程服务器的源代码

...下查询的支持现状:我在LinuxApache服务器“A”上有一个Web应用程序(包含一个上传文档的模块),它只能通过Intranet进行HTTP-ed。必填:需要另一台LinuxApache 查看详情

django框架介绍(代码片段)

...服务的理解web服务应该至少包含两个模块:web服务器和web应用程序,两个模块在功能和代码上解耦。web服务器负责处理socket调用、http数据解析和封装等底层操作。web应用程序负责业务处理、数据增删改查、页面渲染/生成等高层... 查看详情

在共享托管解决方案中在哪里托管 JAVA 中的 Restful Web 服务

...:2013-05-0713:10:54【问题描述】:我刚刚完成了一个由移动应用程序使用的RESTWeb服务的开发。Web服务使用Java开发并在Apache服务器上运行。我现在进入测试部分。为此,我需要在真实服务器中托管我的We 查看详情

Applet/Web Start 安全性

...13-06-0318:00:44【问题描述】:我对使用WebStart部署的Applet和应用程序的安全性感到非常困惑。我的问题是,我应该也更新策略文件还是创建用户定义的策略文件,签署我的Applet的jar文件以访问客户端资源,例如保存和读取文件?使... 查看详情

云是不是为企业 Java Web 应用程序做好了准备?寻求 Java EE 托管建议 [关闭]

】云是不是为企业JavaWeb应用程序做好了准备?寻求JavaEE托管建议[关闭]【英文标题】:IstheCloudreadyforanEnterpriseJavawebapplication?SeekingaJavaEEhostingadvice[closed]云是否为企业JavaWeb应用程序做好了准备?寻求JavaEE托管建议[关闭]【发布时间... 查看详情

如何将 maven 托管依赖项复制到 war\web-inf\lib 中,以便我可以在 Eclipse 中以调试模式运行我的 GWT 2.0 应用程序?

...f\\\\lib中,以便我可以在Eclipse中以调试模式运行我的GWT2.0应用程序?【英文标题】:HowdoIgetmavenmanageddependenciescopiedintowar\\web-inf\\libsoIcanrunmyGWT2.0appindebugmodewithinEclipse?如何将maven托管依赖项复制到war\\web-inf\\lib中 查看详情

Azure Web 应用托管的 WCF 服务返回 404

...发布时间】:2018-08-2001:23:27【问题描述】:尝试将旧版Web应用程序从IIS8移动到AzureWeb应用程序。该应用程序包含许多对WCF服务的ajax调用,这些调用是在没有端点配置的情况下构建的,类似于此处描述的方法:http://stevemichelotti.com... 查看详情

运行 Jar 应用程序时 Java Web Start NumberFormatException

】运行Jar应用程序时JavaWebStartNumberFormatException【英文标题】:JavaWebStartNumberFormatExceptionwhilerunningJarapplication【发布时间】:2014-09-0919:21:17【问题描述】:尝试使用JWS(JNLP)启动运行Jar应用程序时。它一直给我这个错误。甚至找不到... 查看详情

Java Web Start / 可拖动小程序

】JavaWebStart/可拖动小程序【英文标题】:JavaWebStart/draggableapplet【发布时间】:2012-11-3006:30:06【问题描述】:我试图让一个小程序在浏览器关闭后持续存在,以便在退出之前完成一个进程。如果我给小程序“可拖动”属性,然后... 查看详情

需要廉价 Web 托管的 Java 开发人员的好选择 [关闭]

...趣有限的程序员,有哪些好的在线可用空间可以让JavaWeb应用程序的实际开发和部署变得简单?需求:-能够通过非命令行界面创建或至少管理数据库,即使它 查看详情

在 Linux 上启动 java web start 应用程序的问题

】在Linux上启动javawebstart应用程序的问题【英文标题】:issuewithstartingjavawebstartapplicationonlinux【发布时间】:2013-04-0510:38:02【问题描述】:操作系统:Linux版本2.6.18-308.1.1.el5(mockbuild@x86-002.build.bos.redhat.com)(gcc版本4.1.220080704(RedHat4.1.2... 查看详情

如何使用 sql 和 glassfish 运行 java web start 应用程序?

】如何使用sql和glassfish运行javawebstart应用程序?【英文标题】:Howrunjavawebstratapplicationwithhsqlandglassfish?【发布时间】:2013-09-2311:43:05【问题描述】:我有一个带有main函数的java程序,它被打包到jar档案中。DataSource有dao类。预计数... 查看详情

转换 Web API 以使用自托管

】转换WebAPI以使用自托管【英文标题】:ConvertWebAPItouseSelfHosting【发布时间】:2013-12-3109:17:19【问题描述】:我正在尝试将现有的ASP.NETWebAPI项目(当前托管在IIS中)转换为可以使用SelfHost框架的项目。我对实际细节有点模糊,但... 查看详情