java - IntelliJ:为什么我的库没有被识别/下载?
问题描述
IntelliJ 新人在这里。我在让我的项目依赖项工作时遇到一些问题:
所以我有一个名为 ClearDialogue 的项目。这是一个为视频游戏制作分支对话的 IDE。它依赖于我的另一个项目 Clear(ClearVG 和 ClearWindows)来创建它的窗口并渲染 UI。ClearDialogue 还依赖于 LWJGL3 和其他一些依赖项。这些项目使用 Maven 来管理其依赖项。
Clear 是我在 IntelliJ 中设置并成功运行其演示的机器上的一个项目。然而,ClearDialogue 是我的麻烦开始的地方。它依赖于 Clear 来工作,这是另一个项目(不是上传的 JAR 以供其获取)。所以我要说的是:我需要能够使用另一个 IntelliJ 项目作为 ClearDialogue 中的库。
根据其他类似的问题,我可以通过在引用它的项目的 pom 文件中引用另一个项目来实现这一点。所以我这样做了,它确实出现在“外部库”下拉列表中:
有几个问题:
1)尽管 Clear 出现在 External Libraries 部分,但它仍然没有被 IDE 识别为库,当我尝试构建项目时,控制台会打印出类似这样的错误:
2) 尽管 LWJGL3 和其他库在 pom 文件中被指定为依赖项,但似乎 Clear 是唯一下载的库。它们没有被下载,也没有出现在“外部库”选项卡中。也就是说,Clear 本身使用了一些相同的库(LWJGL3),所以它只是确保它们不被重复吗?无论哪种方式,代码本身都会画红线,因为它找不到 LWJGL3 库。
有谁知道解决这些问题的方法?提前致谢。
解决方案
我自己设法解决了这两个问题。
为了解决使用另一个项目作为依赖项的第一个问题,我能够使用项目的 maven 属性来做到这一点。我在 ClearDialogue 的 pom 文件中引用了 Clear,如下所示:
然后我打开 Maven 视图(视图 -> 工具窗口 -> Maven)并将 Clear 自己的模块中的 pom 文件以及项目本身中所需的模块添加到列表中:
在此之后,我按下“重新导入所有 Maven 项目”按钮(上图中的按钮看起来像一个刷新按钮)并重新构建项目(构建 -> 重新构建项目)。这成功地下载了我所有需要的库,并成功地从我自己的项目中添加了本地库,这些库也只能在机器上使用。有了这个,我也能够成功地运行程序。
至于我的问题的后半部分,我能够从 Stack Overflow 上的另一个问题中找到这个答案,巧合的是,我也能够弄清楚如何添加本地依赖项。
推荐阅读
- python - 安装 numpy、matplotlib、pandas、IPython 和 seaborn 时出错
- typescript - 错误消息:“接口只能扩展对象类型或对象类型与静态已知成员的交集”
- c# - 如何为表单设计器上的自定义控件添加 EventHandler?
- r - 功能主成分分数的双图
- reactjs - 有没有在 React 中使用锚标签的特定方法?
- php - 合并长度不等的数组
- python-2.7 - 从 blob 下载文件
- c++ - 如何使用非平凡(POD)类的缓冲区协议实现 pybind11
- typescript - 定义具有可选第一个和最后一个元素的元组列表
- r - R data.table 按条件分组的最后一行的二进制值