如何使用不同gradle多项目的子项目
我试图创建一个helper类多项目,其中一个可以在不同项目中重用子项目。通过这种方式,我可以在将来构建的所有应用程序中重用电子邮件和解析XML等功能 我正试图找出最好的方法来做到这一点,但直到现在,我还没有能够找到这种情况下的最佳做法。我的项目设置如下所示:如何使用不同gradle多项目的子项目,gradle,Gradle,我试图创建一个helper类多项目,其中一个可以在不同项目中重用子项目。通过这种方式,我可以在将来构建的所有应用程序中重用电子邮件和解析XML等功能 我正试图找出最好的方法来做到这一点,但直到现在,我还没有能够找到这种情况下的最佳做法。我的项目设置如下所示: Helpers (root) -Emailer -XmlParser HelpersUser(Root) HelpersUser2(Root) -SomeSubProject -AnotherSubProject 现在我试图让
Helpers (root)
-Emailer
-XmlParser
HelpersUser(Root)
HelpersUser2(Root)
-SomeSubProject
-AnotherSubProject
现在我试图让HelperUser1使用Emailer,HelperUser2使用XmlParser(也可能是Emailer)
这可能根本不是最佳实践,我最好只是构建helperjar并在我的HelperUser项目中使用它们。如果是的话,我也想知道。然而,我正在尝试实现一个设置,其中所有代码都是动态的,并且始终使用最新的代码(并由jenkins进行测试,以确保在分发之前没有任何代码中断)
我该怎么做呢?您可以任意添加任何文件系统类文件或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.+"
+
可能会成为彩票,并以意想不到的方式失败。是否保证在您尝试构建HelperUser1和2时,Emailer和XmlParser已经构建好了?如果需要,可以!我正在寻找最好的方法来实现代码共享到其他项目中,基本上可以按照我想要的方式来做,我只是在寻找一个好的方法来做。