代码之家  ›  专栏  ›  技术社区  ›  sean

包括开源项目中的代码[已关闭]

  •  5
  • sean  · 技术社区  · 15 年前

    我有一个Apache许可证2.0下的开源项目。通常,我只在每个代码文件的顶部包含许可条款和条件注释。

    我从别人的博客或网站上复制的代码呢?放置一个指向该站点的链接是否足够?即使代码是别人写的,我还是把许可条款和条件留在那里?

    正确的方法是什么?

    4 回复  |  直到 15 年前
        1
  •  8
  •   blowdart    15 年前

    你不能保留不是你的代码,因为你没有版权。如果代码已经有许可证,则必须使用该许可证,并将该许可证作为包的一部分提供。

    如果代码不在许可证下,那么我个人会寻找一个在Apache许可证下获得许可的替代代码,显然保留代码中的版权声明,并在项目的文档中注明其来源和版权。

    如果你不能做到这一点,为什么不给代码作者发电子邮件,问他们是否会为它声明一个许可证?如果他们选择的许可证与您的不同,那么您应该清楚地表明,在代码本身和您的文档中,代码段处于不同的许可证之下。

    (当然,我不是律师,也不在电视上播放,而且由于许可是一项法律协议,你应该咨询一个,而不是从网上的随机陌生人那里听取建议)

        2
  •  5
  •   EFraim    15 年前

    不要从博客中复制代码,除非它是明确公开的域或在兼容的许可证下。

    如果它在兼容许可证下,您只需在相关文件顶部的许可证头中提到它。(并在about对话框中包含一个子句)这最后一位可能不是某些许可证所要求的,但仍然是表示感谢的好方法。

        3
  •  5
  •   Sam Saffron James Allen    15 年前

    我复制的代码呢 某人的博客或网站?正在投入 一个足够的链接指向站点?

    伊纳尔,但你不能去改变人们的执照没有得到他们的许可。如果从博客中复制的代码与Apache的许可证存在冲突,则不能将其包含在项目中。有一个合理使用的论点,但它相当狡猾(例如,我只是复制了一些非常小的东西,它确实不需要归因)。

    所以,我建议你 阅读所有的精美印刷品 在你复制样本的博客上,如果你有 任何疑问 开枪射击 给作者发电子邮件 解释你在做什么。一般来说,人们可以在源代码中链接到他们的博客帖子,但是每个人都可以在他们选择的任何许可下许可他们的IP。

        4
  •  1
  •   Kevin Peterson    15 年前

    我认为这是一个严重的问题,因为没有明确许可证的任何东西都可能不存在。例如,我找不到任何关于什么许可证是必需的 http://snippets.dzone.com/ . 我经常在搜索中遇到这个网站。他们声称自己是“公共源代码存储库”,但“公共”是什么意思?

    同样,在gist.github.com上,尽管人们似乎在文件中放一个明确的许可证更好一些。

    作为这些网站的用户,你有一段代码想在你面前使用,但你不能解决这个问题。在理想的情况下,提交某个东西的开发人员将包含一个明确的许可证,但这似乎不太可能。我们可以合理地期望的最好的方法是让这些网站在粘贴任何内容时强制用户选择许可证。

    在大多数情况下,这些片段的重要性不足以使其具有任何商业价值或保证任何限制性许可,但如果提交者没有采取肯定的行动,它仍然是他们的,保留所有权利,而不是明确授予其他人的权利。