我可以在专有软件中使用Grails吗?

Dea*_*ses 7 grails licensing

我试图找出使用Grails作为闭源非自由软件基础的许可后果.这将是下载和安装的服务器产品.用户无权重新分发或将其作为托管服务运行.

Grails和Groovy本身很酷:它们在ASF 2.0下获得许可,这很棒.然而,Grails有十亿个依赖项,我会疯狂地跟踪它们.

Grails可以通过运行生成项目所依赖的软件列表grails dependency-report.我正在查看依赖项列表,但是:

  • 许多图书馆都没有列出他们的许可证.所以我要去每个图书馆并找出它的许可证.
  • 我猜dependency-report不会列出所有的传递依赖(库,这些库包括,等等),因为它们不是在常春藤完全指定.

有没有人以前经历过这个练习?只知道最终结果将是一个巨大的帮助.实际上,拥有所有依赖项及其许可证的列表将是一个巨大的帮助.

谢谢!

Dea*_*ses 5

我花了一天时间追踪所有Grails 1.3.7依赖项.这是要点:

  • Grails本身拥有友好的ASF许可证
  • 某些子组件使用限制性更强的许可证
  • 但是,没有任何子组件使用称之为"showstopper"的许可证,如GPL
  • 但是,有些人会认为一些许可证是showstoppers,最明显的是Hibernate使用的LGPL.

律师害怕LGPL死亡,因为开发人员很容易犯错,迫使整个系统成为开源.触发这一点的是:修改LGPL源代码中的任何一点,将任何一点源代码复制到产品中,或者"静态地"链接到GPL软件而不是"动态"(这是一个长时间的讨论).

因此,一些软件公司和采购部门有禁止其使用的规则.

这是具有比ASF更严格的许可的子组件.LGPL是最糟糕的:

  • Hibernate(LGPL)
  • CDDL 1.0下的一堆javax内容(如激活和邮件)
  • org.beanshell BSH是SPL
  • javassist是MPL

其他一切都是BSD,MIT或ASF的许可.那很好.

  • 我不明白如何修改LGPL的一点点会迫使被许可方释放所有的源代码,任何东西,但被修改的LGPL许可的组成部分. (2认同)