双重许可是什么意思?

Adr*_*iuk 4 licensing

双重许可证代码意味着什么?我不能只将两个许可证都放在源文件中.这意味着我要求用户遵守他们两个的规则,但许可证可能会相互矛盾(否则没有理由加倍许可证).

我想这是在加密链接类似,cipher = crypt_2(crypt_1(clear))(一般)表示,这cipher是既不输出crypt_2clear也没有输出crypt_1clear.这是作品的输出.

同样,在双重许可中,实际上我的代码有一个许可证,只是这个新许可证说明请遵循license1的所有规则,或许可证2的所有规则,并且特此授予您重新分发此应用程序的权利.根据此"双重"许可,license1或license2,或license1或license2允许您重新分发此软件的任何许可,在这种情况下,您应将此许可中的相关许可信息替换为新许可的相关许可信息.

(这是否意味着在某人根据许可证1使用该应用程序之前,他必须执行重新分发给自己的操作?他将如何记录他执行该操作的事实?)

我对么.如果我想要双重许可证,那么我需要什么LICENSE文件以及要放在源文件中的文本,例如Apachev2和GPLv3?

Fel*_*ffa 6

双重许可证允许用户选择使用哪个许可证.

比如,如果您使用GPL和BSD许可证发布您的软件,我可以选择在任何这些许可证下使用和扩展您的软件.

您还可以选择对项目进行三倍或多倍许可,然后您的用户可以选择任何许可.


Adr*_*iuk 1

好吧,我想我明白了。

我认为是这样的:

通过将其程序的源代码与LICENSE文件一起分发,开发人员有效地承诺他将向任何感兴趣的各方授予其程序的许可证。

因此,当有人开始下载源代码时,就可以理解,此时开发人员授予了他程序的许可证。

开发者可以“在双重许可下发布软件”,这实际上意味着他的承诺是向感兴趣的一方授予她选择的对其程序的许可。

这种解释消除了我在执行时遇到的人为问题

license['my-program-v1.0'] := GPLv3
license['my-program-v1.0'] := SomeOtherLicense
Run Code Online (Sandbox Code Playgroud)

同时,并行并保持license['my-program-v1.0']分配的两个值完整。