问题描述
我刚刚遇到了与 spring-boot-starter-aop
的许可有关的问题。spring-boot-starter-aop
带有对 aspectjweaver
的非可选编译传递依赖项。
aspectjweaver
虽然在 EPL 1.0 下获得许可,据我所知,它要求任何使用它的项目公开其源代码。由于我们正在开发商业产品,因此无法公开代码。
这是否意味着 Spring AOP 只能用于开源项目?或者只有当我通过 Spring Boot Starter 添加依赖项时才会出现这个问题。没有aspectjweaver
,还有其他方法可以使用Spring AOP吗?
此外,其他 Spring Boot Starter 依赖于 spring-boot-starter-aop
,例如 spring-boot-starter-data-jpa
(出于某种原因)。但在这种情况下,我能够仅排除 aspectjweaver
依赖项,因此不会违反许可,而且显然该项目仍按预期运行。
解决方法
EPL 不会阻止您使用 EPL 许可库构建封闭的专有软件。
您无需担心 - 有数以千计的闭源项目构建在 Spring AOP 之上。