我有一个由SBT管理的scala项目,其中包括许多适配器链接到专有代码的类。这些商业许可证阻止了链接库的分发,以及我自己编写的适配器代码。如何构建JVM项目以隔离专有代码?
我想从我的其他代码中分离出这些适配器,以便理论上可以将我的项目分配为开源代码。我需要确保每个适配器
- 是单独版本控制。
- 可以是编译& JAR创建过程中,开/关选择地切换(有点像
--with-xxx
在C项目运行./configure
时)
什么的应该是这样的目录结构是什么样子? SBT项目怎么样?如果可能,我想遵守通常的Gradle目录结构。
需要考虑的问题是每个适配器都依赖于核心项目(即他们继承了主项目中定义的Adapter
接口),而核心项目依赖于单个适配器。所以我不确定如何设置它以避免循环依赖,同时将核心代码与适配器代码隔离开来。
是在需要的主源代码编译或只为测试的核心项目适配器的依赖? – Teliatko