使用 IntelliJ 2016.2。
使用 Gradle 2.14.1
我有 2 个项目,每个项目都有自己的 build.gradle 文件和单独的目录结构:
myLib (meant to be jarred and used by others)
- build.gradle
- settings.gradle
- src/main/java/...
sandbox (spring boot web app)
- build.gradle
- settings.gradle
- src/main/java/...
- src/main/resources/...
希望你明白了。在 IntelliJ 中,我在同一级别(无子项目)具有以下模块结构:
- myLib
- sandbox
简单的请求…我想在 sandbox
应用程序中使用 myLib
—。我希望在同一个项目中同时开发这两个模块。
我已经尝试在 IntelliJ 中为 sandbox
添加模块依赖项,用于 myLib
。没有骰子。我试过添加一个 jar 引用,没有骰子。
我相信我需要在 build.gradle 文件中添加一个依赖项,但不知道如何添加。我试过 compile files '<path to myLib.jar>'
等。没有骰子。
原文由 emiles 发布,翻译遵循 CC BY-SA 4.0 许可协议
本地模块
这是大多数 Gradle 项目遵循的模式,其中有一个库,然后是一个使用该库的示例应用程序 - ref Gradle docs
在那个顶级
settings.gradle
你有在
app/build.gradle
中,编译包含的项目基本上,顶级
build.gradle
是子项目和变量的所有常见配置的包装器。例如,它最常用于 Maven url 的repositories { }
部分。有关详细信息,请参见 Gradle - Multi-project builds遥控器模块
以上内容适用于在本地工作,但假设您想与许多其他开发人员共享您的存储库而不让他们下载额外的源代码。然后您会将其他库发布到远程服务器。
当您将这些行添加到您的项目时,这就是您已经在做的事情
如果您的项目 在 GitHub 上公开,请使用 jitpack.io 之 类的服务。您还可以在 Bintray OSS 或 Maven Central 上设置一个帐户,让您的库像大多数其他库一样可用。
如果您的项目 在您的公司内是私有的,您将需要一些 Maven 类型的服务器,无论是通用 Web 服务器,还是 Nexus 或 Artifactory,您都可以 将其添加到 repositories 块中。
然后像往常一样添加
compile
或implementation
来源