java - Eclipse下如何将maven格式的所需项目添加到另一个项目中?

标签 java maven buildpath

我有一些库的源代码,它是在 Maven 下制作的。当我用Eclipse下载它时,它没有将其识别为Java项目。如果我将 Maven 性质分配给事件,则 Java 性质不会出现(显然对我来说)。

这意味着我对这个项目唯一能做的就是运行 Maven 目标。

如果独立的话就可以了。

我们将上面的项目称为“源”项目。

现在我想使用源项目的 jar(它生成一些 jar)作为另一个项目的依赖项,该项目将被称为“目标”项目。

如果我尝试使用标准 Java Build Path 对话框(我可以在其中引用其他项目),则源项目甚至不会列出。这就是为什么我说 Eclipse 没有将其视为 Java 项目。

但是也许可以用目标项目的 pom.xml 引用源项目?

源项目具有以下 pom:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <artifactId>piccolo2d-parent</artifactId>
    <groupId>org.piccolo2d</groupId>
    <version>2.0-SNAPSHOT</version>
    <relativePath>./parent/pom.xml</relativePath>
  </parent>
  <artifactId>piccolo2d-complete</artifactId>
  <packaging>pom</packaging>
  <name>Piccolo2D</name>
  <scm>
    <connection>scm:svn:http://piccolo2d.googlecode.com/svn/piccolo2d.java/trunk</connection>
    <developerConnection>scm:svn:https://piccolo2d.googlecode.com/svn/piccolo2d.java/trunk</developerConnection>
    <url>http://code.google.com/p/piccolo2d/source/browse/piccolo2d.java/trunk</url>
  </scm>
  <build />
  <reporting />
  <modules>
    <module>parent</module>
    <module>core</module>
    <module>extras</module>
    <module>swt</module>
    <module>examples</module>
    <module>swt-examples</module>
  </modules>
</project>

是否可以在目标项目的 pom.xml 中编写一些内容,以便它引用源项目?

如果我设置普通标签,那么它可能会转到全局存储库并从那里获取它。

该怎么办?也许我应该重命名源项目 Artifact 或其他什么?

“SNAPSHOT”这个名字可能适用于此吗?我想给 Piccolo 添加一些功能。

更新

我在我的“目标”项目中引用了子项目的 id 之一,Eclipse 在某处找到了它。但我不确定它是否从我的工作空间中拿走了它。最有可能的是它是从全局存储库中获取的。另外,我无法下载“目标”项目中的任何源代码。这也意味着 Eclipse 可能不会将工作区中的 Artifact 放入存储库中。

最佳答案

您的“源”项目有 pom.xml。这意味着它本身并不是一个 Java 项目,它是“core”、“extras”等项目的容器。

在目标项目中,您需要将 a 添加到一个或多个子项目,而不是源项目本身。例如,要添加核心模块(假设它具有artifactId piccolo2d-core,请将以下内容添加到目标pom.xml:

<dependencies>    
   <dependency>
    <groupId>org.piccolo2d</groupId>
    <artifactId>piccolo2d-core</artifactId>
    <version>2.0-SNAPSHOT</version>
   </dependency>
<dependencies>

如果项目在同一个 Eclipse 工作区中导入,Eclipse 会将引用的子项目添加为 Java 构建路径中的项目引用。

关于java - Eclipse下如何将maven格式的所需项目添加到另一个项目中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19990057/

相关文章:

java - Spring RestTemplate 和泛型类型 ParameterizedTypeReference 集合,如 List<T>

java - maven项目部署后如何获取正确的绝对文件路径

java - 在构建路径中包含其他项目时出现 NoClassDefFounderror

java - 在 IntelliJ IDEA 构建路径/模块中导入另一个项目?

java - 无法通过包安装程序 GUI 加载 UIMA PEAR 包

java - 在 Rad 中构建路径

java - 为什么要编译?

java - 如何通过将切入点作为用户的输入来将 spring aop 应用于遗留代码

java - 我可以使用 WatchService(而不是整个目录)监视单个文件的更改吗?

java - Nexus 存储库管理器找不到 pom 文件