Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用maven集成2个eclipse项目_Java_Eclipse_Git_Maven_Repository - Fatal编程技术网

Java 使用maven集成2个eclipse项目

Java 使用maven集成2个eclipse项目,java,eclipse,git,maven,repository,Java,Eclipse,Git,Maven,Repository,我的存储库中有一个web项目,最近我收到了另一个项目,就是代码,我需要将它作为第一个项目的子模块使用(只是java实体类)。比如: ./web-project/.project ./entities/.project ./parent-folder /pom.xml /web-project /pom.xml /entities /pom.xml 因为我相信它会经常更改,所以我需要它仍然是一个单独的eclipse项目。我想要的是在web项目中使用实体,就像我将.j

我的存储库中有一个web项目,最近我收到了另一个项目,就是代码,我需要将它作为第一个项目的子模块使用(只是java实体类)。比如:

./web-project/.project
./entities/.project
./parent-folder
  /pom.xml
  /web-project
    /pom.xml
  /entities
    /pom.xml
因为我相信它会经常更改,所以我需要它仍然是一个单独的eclipse项目。我想要的是在
web项目中使用
实体
,就像我将
.jar作为依赖项一样


除了创建我自己的maven repo并从中获取JAR之外,如果我使用maven构建两个项目,有没有办法将其添加到我的构建路径中?

我不确定我是否完全理解这个问题。从maven生成Eclipse项目时,您似乎希望将依赖项目包含在Eclipse构建路径中。是这样吗

如果是这样,我知道的唯一方法就是从父maven项目运行mvn eclipse:eclipse。也就是说,您需要创建一个pom.xml目录,然后将两个现有项目放在该目录下。比如:

./web-project/.project
./entities/.project
./parent-folder
  /pom.xml
  /web-project
    /pom.xml
  /entities
    /pom.xml

然后,当然,在pom.xml文件中声明适当的maven依赖项。

我认为除了将
实体
声明为
web项目
之外,您不需要做任何事情

此关系确保
实体
eclipse项目源代码自动包含在
web项目
的构建路径中,只要您具有:

  • 这两个项目都导入到eclipse中,并使用
    m2e
    插件标记为
    Maven
    项目

  • Maven>Enable Workspace Resolution
    选项已启用


至于将它们构建在一起,您可以创建一个一次性父项目(如果您不想保留父项目),将这两个项目列为
module
s。否则,您必须先构建
实体
项目并将其安装到本地repo,然后再构建
web项目
。但是,您将看到
实体
类在
web项目
项目上随时可用的更改,因为前者的源代码位于其构建路径中。

在构建
web app
之前,我最终解决了将构建的工件安装到本地
m2
repo的问题。它可以在eclipse上工作,也可以从命令行运行构建

在从属项目
实体上
将以下插件添加到
安装
构建步骤:

  <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-install-plugin</artifactId>
        <version>${maven-install-plugin.version}</version>
        <executions>
            <execution>
                <phase>install</phase>
                <goals>
                    <goal>install-file</goal>
                </goals>
                <configuration>
                    <groupId>${project.groupId}</groupId>
                    <artifactId>${project.artifactId}</artifactId>
                    <version>${project.version}</version>
                    <packaging>jar</packaging>
                    <file>${basedir}/target/${project.artifactId}-${project.version}.jar</file>
                </configuration>
            </execution>
        </executions>
    </plugin>

org.apache.maven.plugins
maven安装插件
${maven install plugin.version}
安装
安装文件
${project.groupId}
${project.artifactId}
${project.version}
罐子
${basedir}/target/${project.artifactId}-${project.version}.jar

并像往常一样在
web项目中声明依赖关系。
POM.

事实并非如此。我只希望能够使用
web项目中
实体
中的类,就像我将生成的
实体
jar作为依赖项包含一样。我真的无法更改文件夹结构来创建一个包含这两者的项目。您只想在构建路径上创建jar文件吗?那么,只需要一个简单的maven依赖项就可以了。如果希望自动设置实际的eclipse项目依赖项,则需要父文件夹。当然,您可以手动设置构建路径……或者我还是不明白?