我在我的存储库中有一个web项目,最近我收到了另一个项目,就是代码,我需要在第一个项目上使用它作为子模块(只是java实体类)。类似于:
./web-project/.project
./entities/.project因为我相信它会经常被改变,所以我需要它仍然是一个单独的eclipse项目。我想要的是在web-project中使用web-project,就像我将.jar作为依赖项一样。
除了创建自己的maven回购和从那里获取jars之外,是否有方法将其添加到我的构建路径,因为我正在使用maven构建两个项目?
发布于 2015-01-07 10:49:40
在构建m2之前,我最终解决了将构建的工件安装到本地web-app回购的问题。它既可以在eclipse上运行,也可以从命令行运行构建。
在依赖项目中,entities向install构建步骤添加以下插件:
<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>并像往常一样在web-project POM中声明依赖项。
发布于 2015-01-05 15:43:57
我不确定我是否完全理解这个问题。听起来,在从maven生成Eclipse项目时,需要将依赖项目包含在Eclipse构建路径中。是那么回事吗?
如果是这样的话,我知道的唯一方法就是运行:来自父maven项目的eclipse。也就是说,您需要创建一个pom.xml是某个目录,然后将现有的两个项目放在下面。类似于:
./parent-folder
/pom.xml
/web-project
/pom.xml
/entities
/pom.xml然后,当然,在pom.xml文件中声明适当的maven依赖项。
发布于 2015-01-05 16:18:11
我认为除了将entities声明为web-project Maven项目的一个<dependency>之外,没有什么需要做的。
这种关系确保entities eclipse项目源自动包含在web-project的构建路径中,只要您有:
Maven插件标记为m2e项目的两个项目Maven > Enable Workspace Resolution选项至于将它们构建在一起,您可以创建一个丢弃的父项目(如果您不想保留父项目),将这两个项目作为module列出,否则,您必须构建entities项目并在构建web-project之前将其安装到本地回购系统中。但是,您将看到entity类的更改在web-project项目上很容易获得,因为在其构建路径中有前者的源代码。
https://stackoverflow.com/questions/27782599
复制相似问题