框架/库/API的许可证模型 我是一个程序员,开始为移动电话(java,Android),网页和C++应用程序构建Visual Studio。
现在的问题是,我不明白许可证是如何运作的。据我所见,我不允许使用任何库,甚至java的基本库也不允许,因为它们要么在GPL下,要么在其他地方 例如,我是否必须付钱给Sun使用他们的java库来构建我的应用程序?或者,当需要发布代码时,如何编写移动应用程序。大公司如何规避这一问题 还有一件事我不明白,我可以免费使用哪些特定于windows的库和API(如MFC、.NET、COM)。这个许可证是如何工作的?如果我刚买了VisualStudio套装,它是否足以让我使用这个api?我现在的处境是,我学会了使用这些库/API/框架,现在是时候实际使用它们了,我必须为此付出代价。框架/库/API的许可证模型 我是一个程序员,开始为移动电话(java,Android),网页和C++应用程序构建Visual Studio。,java,.net,com,mfc,licensing,Java,.net,Com,Mfc,Licensing,现在的问题是,我不明白许可证是如何运作的。据我所见,我不允许使用任何库,甚至java的基本库也不允许,因为它们要么在GPL下,要么在其他地方 例如,我是否必须付钱给Sun使用他们的java库来构建我的应用程序?或者,当需要发布代码时,如何编写移动应用程序。大公司如何规避这一问题 还有一件事我不明白,我可以免费使用哪些特定于windows的库和API(如MFC、.NET、COM)。这个许可证是如何工作的?如果我刚买了VisualStudio套装,它是否足以让我使用这个api?我现在的处境是,我学会
如果这是真的,那就意味着如果不在其他方面花费数千美元,就不可能构建商业应用程序?你的问题非常广泛,涵盖了广泛的库和相关许可证。但简单的回答是,您提到的大多数库代码都可以用于商业目的,而无需支付任何费用;特别是Java和.Net代码。各自的平台持有者希望人们使用它们。只有当您进入更专业的情况下,他们才会开始获取收入,通常是通过支持合同或特殊的VM版本(如旧的JRockit VM)。复制代码并将其作为自己的代码使用与链接到它之间有很大的区别
语义可能很快变得复杂,因为有许多类型的许可证,所以作为一个热情的推荐,请一位熟悉该领域的好律师提供服务。那可以在将来为你省去很多麻烦 大公司会仔细检查其解决方案中包含的每个工具/sdk/库的许可证 关于发布源代码的义务,如果您使用的是MicrosoftSDK或Javabase库,则不必这样做 但为了100%确定,您必须始终阅读许可证。阅读以下Wikipedia文章是了解授权工作原理的良好开端:
- -如果许可证是copyleft,则该许可证的所有限制也将适用于您的代码,但您将无法对代码或产品施加进一步的限制。这意味着,如果您使用的开放源代码sdk具有Copyleft许可证,则必须将源代码作为开放源代码分发
- -如果许可证是无版权的,您可以对其施加进一步的限制,如为最终产品增加费用,并拒绝分发代码
- -如果包含或链接到基于copyleft的许可证,则copyleft标准适用
- -仅当您将copyleft许可代码直接包含到源代码库中时,copyleft标准才适用。但如果您仅链接到copyleft类型的许可产品,则它不适用
以下是一些案例以及如何处理:
免责声明:IANAL从未听说过“无版权”。我知道这些许可证是许可证。@CodeInChaos从发布的链接中读取(GNU公共许可证,较小的GNU公共许可证)