- java/
- JavaFX-我是否需要购买许可证并将我的软件传递到网上共享?
JavaFX-我是否需要购买许可证并将我的软件传递到网上共享?
JavaFX-我是否需要购买许可证并将我的软件传递到网上共享?,java,java-8,javafx-8,signed-applet,Java,Java 8,Javafx 8,Signed Applet,好的,所以我注意到(我假设是由于安全漏洞)Java已经决定强迫人们对Java软件进行签名,据说该许可证的价格在100-300美元左右。这应该取决于您通过的授权许可证。然而,我正在学习JavaFX,如果我不能与世界免费共享我的软件,那么学习它有什么意义呢
问题是在线或离线javafx应用程序是否也是如此?让我烦恼的是,我可能不得不从口袋里掏钱,让我的软件经过测试和通过,以便得到验证,以便任何人都能在电脑上运行它。我开始考虑这个问题,因为我刚刚开始我的第一个真正的JavaFX项目。这是一款扑克游戏,
好的,所以我注意到(我假设是由于安全漏洞)Java已经决定强迫人们对Java软件进行签名,据说该许可证的价格在100-300美元左右。这应该取决于您通过的授权许可证。然而,我正在学习JavaFX,如果我不能与世界免费共享我的软件,那么学习它有什么意义呢
问题是在线或离线javafx应用程序是否也是如此?让我烦恼的是,我可能不得不从口袋里掏钱,让我的软件经过测试和通过,以便得到验证,以便任何人都能在电脑上运行它。我开始考虑这个问题,因为我刚刚开始我的第一个真正的JavaFX项目。这是一款扑克游戏,将会有各种风格的扑克,甚至可能包括21点。这真的让我很沮丧,除了我之外,没有人会玩它。有人能解释一下这一巨大的变化,以及它对刚刚起步的开发人员意味着什么吗?简短建议
许可您的软件供其他人使用,例如使用
如果分发第三方库或运行时,请确保遵守这些运行时的许可证
为您的应用程序(例如自包含的应用程序)选择一个
根据您打算如何分发软件,可能需要也可能不需要使用证书对软件进行签名
如果您希望您的用户向第三方证书颁发机构验证您的身份,请从该机构购买证书,否则请使用自签名证书
对于您在问题中定义的特定用例:
许可您自己的软件不需要付费
将未经修改的Java8运行时与软件一起分发是免费的
不为软件签名或使用(免费)自签名证书可能没问题李>
部署模式
部署应用程序的方式将影响应用程序的签名要求
通过webstart或Java浏览器插件部署的应用程序应使用自签名或第三方证书进行签名。标准(以及NetBeans等IDE)可用于此目的
通过商店(如Mac App store)部署的应用程序需要从商店所有者(如苹果)处获得该商店的开发者证书。虽然商店的数字签名概念与浏览器嵌入内容的签名类似,但签名过程不同,需要使用商店所有者提供的第三方工具
如果你想让Mac用户最轻松地使用你的独立应用程序,那么你可能还需要一个,尽管受过教育的用户仍然可以使用你的软件,即使你没有这样的ID
证书
您所指的许可证不是许可证,而是由一家公司颁发的许可证。证书是根据a颁发的,以帮助建立信任关系(例如,您的软件的用户可以知道它来自John Conner,而不是终结者或其他一心想感染cybernet的恶意软件)
您不需要从知名的证书颁发机构获得软件签名证书。你可以成为你自己的权威和权威。使用自签名证书时,用户将看到与使用知名证书颁发机构颁发的证书不同的证书。本质上,拥有一份自签名证书,你就是在证明自己的身份;用户不会向第三方确认提供软件的人就是他们声称的人
是使用自签名证书还是向证书颁发机构付费以授权您的身份取决于您希望如何向用户展示应用程序。如果您只是将应用程序分发给几个认识您的朋友,那么自签名证书就很好了。如果您想将应用程序分发给数千名不认识您的人,建议您对应用程序进行签名。此外,某些部署模式强制使用证书
如果使用NetBeans之类的IDE,它将在必要时自动创建并使用自签名证书。您可以将java等命令行工具与或第三方工具结合使用,使用自签名或第三方颁发的证书对应用程序进行签名
许可证
A对软件的使用和再分配施加了法律参数(想想版权法,而不是密码工具),因此它与用于建立信任的证书有很大不同
如果您将第三方软件与应用程序一起分发,则必须遵守第三方授予您的许可证。您有责任阅读和理解该软件的许可证,并确保遵守相关规定
你也应该为他人使用。由于您是为自己的软件颁发许可证的人,您不需要购买许可证,您只需选择您想要的许可证,并将其文本文件包含在您的软件中,以便有人可以看到它
假设我想发布我的Javafx程序,我应该给他们哪个文件
对于您问题中描述的应用程序,我建议使用部署模式,该模式将应用程序打包为本机平台安装程序(dmg
file For OS X,msi
或exe
For Windows,rpm
或deb
For Linux,等等)。这样,用户可以下载特定于其计算机的单个文件,并以与任何其他软件完全相同的方式安装和卸载您的应用程序
自带包装