我正在尝试创建一个辅助类多项目,其中可以重用不同项目中的子项目。通过这种方式,我可以重用电子邮件等功能,并在将来构建的所有应用程序中解析xmls。
我试图找出最佳方法,但直到现在我还没能找到适合这种情况的最佳做法。我的项目设置看起来像:
Helpers (root)
-Emailer
-XmlParser
HelpersUser(Root)
HelpersUser2(Root)
-SomeSubProject
-AnotherSubProject
现在我试图让HelperUser1使用Emailer和HelperUser2来使用XmlParser(也可能是电子邮件)。
可能这不是最好的做法,我最好只是建立帮助罐并在我的HelperUser项目中使用它们。如果是这样,我也想知道。但是,我试图实现一种设置,其中所有代码都是动态的,并且始终使用最新的代码(并由jenkins测试以确保在分发之前没有任何中断)。
我将如何做到这一点?
答案 0 :(得分:0)
您可以随意将任何文件系统类文件或jar作为依赖项添加到任何项目中。
因此,您的HelperUser项目将具有以下方式之一的依赖关系:
dependencies {
compile files('Helpers/a.jar', 'Helpers/b.jar')
compile fileTree(dir: 'Helpers/build', include: '*.jar')
compile files("$Helpers/build/classes")
}
顺便说一句,为了解决问题的最后部分,您可以使用+
通配符来暗示所有已声明的回购中的最新版本。
compile "junit:junit:4.+"
+
可以成为乐透,并且会以意想不到的方式失败。