我曾经在一家咨询公司接受过采访,谈话中他们谈到他们使用开源产品(这很棒,我已经广泛使用了Hibernate,JBoss等。)令我惊讶的是,当我问到是否他们在为客户编写应用程序时使用了GPL许可的OSS,他们说:“当然,一直如此!只要客户得到了他们想要的东西并且感到高兴。” 现在,我不是律师,也不是大批执照的人,但是我给人的印象是,使用GPL代码(假设您包括了一些库),那么您需要在同一执照下发布整个应用程序。当我指出这一点时,我得到了一个快速的回答:“好,完成后,我们将所有源代码提供给客户,因此这实际上不是问题。”
不想进一步强调这个问题(采访不是像这样的争论的地方),我让它滑下来。但是,这仍然使我担心该业务的特定实践。GPL许可代码的正式字词是什么?它需要“开放”吗?您是否必须发布并说“我的公司使用了这个库,所以您可以在这里下载我们花费数百万美元构建的购物和订单履行系统应用程序”。在这种情况下,公司是否有权在客户不知情的情况下使用GPL代码?仅“给他们源头”就足够了吗?