【问题标题】:Questions to IntellijIDEA and MavenIntellijIDEA 和 Maven 的问题
【发布时间】:2013-10-15 05:34:50
【问题描述】:

在过去的几年里,我一直在使用 XCode 和 Objective-C 工作,但我知道一旦我将不得不过渡到 Eclipse 或类似的 Java 项目。案例是,我不是特别喜欢 Eclipse,这导致我进入了一个新的开发环境,即 IntellijIDEA。但是,我完全不熟悉应该如何处理我的文件以及如何添加外部库,也不知道我的 CLASSPATH 应该是什么。我在哪里保存这些外部库在我的项目中?我也在使用 Maven,我不太清楚为什么要使用依赖项。如果我在我的类路径中包含 .jar - 或者我存储资源、类等的任何位置 - 为什么会有依赖项?我有一个工作项目,但我不习惯发布或使用它,同时不确定我在那里做了什么。我了解如何在 IntelliJ 中添加外部 .jar 文件,但是在我的项目中在哪里添加这些外部库?

到目前为止,我是这样做的: 假设我已经下载了一个 Maven 项目,我想在其他项目中使用它。我使用mvn install,然后(在我的模块设置中)将目标文件夹中的 .jar 添加为外部库。 IntelliJ 是否保留对该 .jar 文件的引用?如果该 .jar 在我的下载文件夹中,并且我想将项目传输到服务器,那么此连接是否断开?

【问题讨论】:

  • 一次有很多问题:)
  • @TheEwook 对不起。我认为它们是相互关联的,因此适合在一个问题中发布。我希望得到一个尽可能有凝聚力的答案:-)
  • 问题的标题应该更具体

标签: maven jar intellij-idea java


【解决方案1】:

在 Maven 项目中,您将依赖的库添加到 pom.xml 文件中,没有需要将它们添加到 IDE 的其他位置和/或通过 IDE 将它们链接到您的项目。只需向您的pom.xml 文件添加一个新的依赖项。

maven 将所有工件(库)存储在一个文件夹中(如果没有另外设置):~/.m2/,这是您保存依赖项的地方,也是您的本地 maven 存储库。

Maven 让您的生活更轻松,因为您不必再​​将 jar 添加到您的类路径中。确保您的 Maven 项目确实被您的 IDE 识别为 Maven 项目(通常在您的项目视图中它是一个很小的 ​​M)。

这是 maven 的简短介绍,一开始对我有很大帮助:http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html,尤其是为了了解生命周期。

正如您提到的mvn install:您构建的工件将部署到您的本地 maven 存储库,您拥有的所有其他项目都可以使用此工件并将引用您部署的最新工件。

您可以像运行任何其他项目一样运行您的项目,单击 运行 按钮并选择您的主类。

如果您的项目生成一个可运行的 jar,您也可以在 pom.xml 文件中定义它。请参阅How can I create an executable JAR with dependencies using Maven? 创建一个 jar,其中包含一个 jar 中的所有依赖项/库,或 How to create a runnable jar with maven that includes dependencies in a separate "lib" folder (not an uber jar) 用于将 deps/libs 放入单独文件夹的可运行 jar。无论如何,在这两种情况下,Maven 都会适当地生成 MANIFEST 文件(可执行 jar 所需的文件)。

【讨论】:

    【解决方案2】:

    尝试mvn idea:idea 从 maven 的 pom.xml 中为 IntellijIDEA 生成项目。然后只需打开项目并查看添加的所有库。

    【讨论】:

    • 听起来不错,但是这些库保存在哪里呢?哪个文件夹?
    • 它们保存在 $HOME/.m2/repository 下的本地 Maven 缓存中,并链接到项目内部。 Idea 还会为您下载库的源代码,非常棒的工具!
    猜你喜欢
    • 1970-01-01
    • 2023-04-02
    • 2011-08-02
    • 2013-02-28
    • 1970-01-01
    • 2023-03-29
    • 2015-05-21
    • 2018-04-17
    • 2010-10-27
    相关资源
    最近更新 更多