【问题标题】:How to use common source code across multiple IntelliJ projects?如何跨多个 IntelliJ 项目使用通用源代码?
【发布时间】:2017-09-06 23:59:35
【问题描述】:

我目前正在寻找使用 IntelliJ 启动两个新项目 - 一个是 Android 项目,另一个是标准 Java 项目。

我想在两个项目中使用大量相同的代码,但不想将文件复制到项目中。在后期,很可能这段代码也会用到其他项目中。

目前我很难弄清楚如何在两个项目中包含公共代码 - 我已经创建了新模块,但似乎导入无法识别模块中的代码。

因此目录的结构类似于:

|- Android Project
|- Java Project
|- Android Library
|- Java Library
|- Common Library

所以你会:

  • “Android Project”使用“Android Library”和“Common Library”目录中的代码
  • “Java 项目”使用“Java 库”和“公共库”目录中的代码
  • “Android 库”使用“公共库”目录中的代码
  • “Java 库”使用“公共库”目录中的代码

有人可以建议如何在 IntelliJ 中配置它吗?

在 Android 项目的情况下,我正在使用模块设置和依赖项,并且可以让它短暂工作,但只要有 Gradle 同步,这些更改就会丢失。

谢谢。

【问题讨论】:

  • 创建一个包含公共代码的库项目,并从您的其他项目中引用它。

标签: java android intellij-idea


【解决方案1】:

您可能正在寻找一种利用模块项目的结构。 (非常类似于 Visual Studio 解决方案)。

您通常可以在 Intellij 中创建一个project。但是那个项目可以有很多modules

要设置它,我会先添加一个空项目。创建空项目后,开始添加模块。准备好模块后,您需要在项目结构设置中添加模块依赖项。

  1. 打开结构设置对话框
  2. 点击模块
  3. 选择一个或多个依赖于其他模块的模块
  4. 单击“依赖”选项卡
  5. 点击右边的绿色+号
  6. 选择模块依赖
  7. 选择要依赖的模块

Dependency Tab 上阅读有关您的选项的更多信息。

【讨论】:

  • 谢谢局长。是的,模块似乎是要走的路,但我还不能让它们正常工作。唯一的方法是在项目目录中创建一个新模块,然后将源代码复制到默认的“src”目录中。以其他方式执行此操作,我发现如果在应用程序(例如 MainActivity)中我想使用其中一个模块中的类,它找不到它。
  • @CapitanoKyz,没问题,看看编辑对你有没有帮助。
  • 感谢您的建议。我已经用更多关于结构和依赖关系的细节编辑了原始问题。主要问题似乎是,一旦 Gradle 同步或重新导入,依赖项就会丢失。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-03-19
  • 2010-12-19
  • 2013-02-27
  • 1970-01-01
  • 2014-04-10
  • 1970-01-01
相关资源
最近更新 更多