首页 \ 问答 \ 使用maven集成2个eclipse项目(Integrate 2 eclipse projects using maven)

使用maven集成2个eclipse项目(Integrate 2 eclipse projects using maven)

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

./web-project/.project
./entities/.project

因为我相信它会经常被改变,所以我需要它仍然是一个单独的eclipse项目。 我想要的是使用web-projectentities ,就像我已经将.jar作为依赖项一样。

除了创建我自己的maven repo并从那里获取jar之外,有没有办法将它添加到我的构建路径,因为我正在使用maven来构建两个项目?


I have a web project in my repository and recently I've received another project, just code, that I need to use as a submodule on the first one (just java entity classes). Something like:

./web-project/.project
./entities/.project

As I believe it's going to be changed often I'd need it to still be a separate eclipse project. What I want is to use the entities in the web-project, like I'd have included the .jar as a dependency.

Apart from creating my own maven repo and getting the jars from there, Is there way to add it to my build path given I'm using maven to build both projects?


原文:https://stackoverflow.com/questions/27782599
更新时间:2019-12-13 07:41

最满意答案

我不确定我完全理解这个问题。 听起来您希望在从maven生成Eclipse项目时将依赖项目包含在Eclipse构建路径中。 是对的吗?

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

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

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


I finally solved it installing the built artifact to the local m2 repo before building the web-app. It works both on eclipse and running the builds from command line.

On the dependent project entities add the following plugin to the install build step:

  <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>

And declare the dependency as usual in the web-project POM.

2015-01-07

相关问答

更多

使用复选框更新进度条:Jquery(Using check boxes to update progress bar : Jquery)

更新了FIDDLE 您可以将已选中复选框的值相加,而不是计算已选中复选框的数量: //calculate percentage perc = 0; $("#theList input[type=checkbox]:checked").each(function( index ) { perc += parseInt($(this).val()); }); if (perc < 15) { $("#progress").css('backgroun

我应该使用cygwin进行nutch和solr集成吗?(Should i use cygwin for nutch and solr integration?)

使用cygwin,这是一个很好的指南,可以将它们组合在一起: http://amac4.blogspot.com/2013/07/setting-up-solr-with-apache-tomcat-be.html Use cygwin, heres an excellent guide to set them up together: http://amac4.blogspot.com/2013/07/setting-up-solr-with-apache-tomcat-be.html

使用ctypes向C / C ++库提供函数的外部定义(Provide external definition of function with ctypes to a C/C++ library)

您正在寻找ctypes数据类型的in_dll方法。 C: #include <stdlib.h> int (*hello_printf)(const char *format, ...) = NULL; int test(const char *str, int n) { if (hello_printf == NULL) return -1; hello_printf(str, n); return 0; } ctypes的: from ctype

从另一个NSManagedObjectContext获取NSManagedObject(引用相同的NSPersistentStoreCoordinator)(Getting NSManagedObject from another NSManagedObjectContext (referring the same NSPersistentStoreCoordinator))

您可以指定目标NSManagedObjectContext,即 NSFetchRequest *request = [[NSFetchRequest alloc] init]; NSEntityDescription *entity = [NSEntityDescription entityForName:@"MyEntity" inManagedObjectContext:managedObjectContext]; [request setEntity:entity]

如何从MS CRM 2011中的自定义字段中提取数据(How to pull a piece of data from a custom field in MS CRM 2011)

如果您想在javascript中执行此操作,则必须访问组织端点并检索帐户/案例记录。 主窗体包含有关查找字段,该字段将具有记录的GUID,显示名称和实体名称。 CRM 2011 SDK有一些示例代码,用于在Javascript中检索记录,甚至还有一个可以使用的库,可以为您完成所有艰苦的工作。 If you want to do this in javascript, you'll have to access the organization endpoint and retrieve the

如何在Flask框架上显示浏览器中的所有错误?(How to show all errors in the browser on Flask framework?)

我终于注意到它没有在浏览器上显示错误,因为我在WSGI mod下运行服务器。 如果我在shell上运行python文件,Python Flask会在浏览器上显示详细错误。 app.debug = True 这是查看详细错误的命令。 所以,我不得不关闭WSGI mod来运行python文件来查看Flask支持的详细错误。 I finally noticed that it doesn't show errors on the browser because I run the server un

用于找到最接近某一测量的测量集的算法(Algorithm for finding the closest set of measurment to certain measurment)

假设您的数据是“模糊的”,您可能想要研究的一类算法是动态编程 。 通过模糊我的意思是两组几乎对齐,但是一组可以插入额外的元素,与另一组相比被移除并且匹配元素“几乎”匹配。 在这些类型的算法中,您通常通过定义在对齐中插入/移除元素的惩罚以及不完全匹配的两个元素的惩罚分数来定义距离分数。 在您的情况下,您可以定义插入/删除罚分“100”秒以插入额外的计时事件,并将两元素距离分数定义为绝对距离(秒)。 根据该定义,您可以轻松找到并修改needleman-wunsch算法实现或类似的东西。 这将在可接受

MySQL直接运行但CodeIgniter中的语法错误(MySQL running directly but syntax error in CodeIgniter)

更改 'MAX(IF(user_fields_to_users.map_field_id 至 MAX(IF('user_fields_to_users.map_field_id The problem was multiple query's, here is the code I used $sql = " SET @sql = NULL; SELECT GROUP_CONCAT(DISTINCT CONCAT( 'MAX(IF(user_

相关文章

更多

最新问答

更多
  • NumPy标量,广播和__iadd__方法(NumPy scalars, broadcasting and the __iadd__ method)
  • 快速排序算法输出错误(Getting wrong output for quicksort algorithm)
  • Rails管理员:没有Rails 4应用程序的编辑,显示或删除按钮(Rails Admin: No edit, show, or delete buttons for Rails 4 app)
  • 部分刷新问题触发两次(Issue with partial refresh triggered twice)
  • jsPlumb draggable element javascript函数(jsPlumb draggable element javascript function)
  • MVC4:ViewModel(带有radiobuttonlist)在HttpPost之后为空(MVC4: ViewModel (with radiobuttonlist) is empty after HttpPost)
  • 如何在同一帐户上设置“Dev repo”(在prod和团队之间)(How to set up a “Dev repo” (between the prod and the team) on the same account)
  • 如何在tcl中将eth0配置为发送方udp端口(how to configure eth0 as a sender udp port in tcl)
  • EF6.1 beta 1如何获得Tooling Consolidation功能?(EF6.1 beta 1 how to get the Tooling Consolidation feature?)
  • 适用于Windows和PHP 5.5的Phalcon(Phalcon for Windows and PHP 5.5)
  • 有没有办法忽略hg责任中的提交?(Is there a way to ignore a commit in hg blame?)
  • Desire2通过API学习访问学期的权限(Desire2Learn Permissions to Access Semesters Via API)
  • 从aspx将服务器的文件复制到另一台服务器(Copy a file of a server to another server from aspx)
  • 使用YSlow / Web Developer扩展程序确定页面大小(Figuring out page size with YSlow / Web Developer extension)
  • Select语句将字符串中的前7个字符与其他表中的其他7个字符进行比较(Select statement which compares first 7 chars in a string with other 7 chars in other table)
  • 检测对注册表的更改,防止更改等(Detect changes to registry, prevent changes, etc)
  • 用户的鼠标/键盘运动分析是否有特殊名称?(Does the analysis of mouse/keyboard motions of a user have a special name?)
  • 获取Rails中资源的路由列表(Get list of routes for a resource in Rails)
  • 用函数值除以数字(Divide a function value by a number)
  • 熊猫Python:如何从今天开始创建失效列?(Pandas Python: How to create lapse since today column?)
  • GDK Bug报告(GDK Bug Reports)
  • 困惑于在python中循环遍历列表(confused about looping through lists in python)
  • 'less'由'which'输出指定的文件('less' the file specified by the output of 'which')
  • 如何在ASP.NET中优化AJAX(How to optimize AJAX in ASP.NET)
  • 在文本文件中转换纪元时间(Convert epoch times in text file)
  • 表细胞伸展(Table cell stretching)
  • GridView控件(GridView Control)
  • 从构建定义文件控制pdb文件输出(Control pdb file output from build defintion file)
  • *将方法传递给类(*Passing a Method into a Class)
  • 如何在HttpReceiveHttpRequest()中使用HTTPS?(How to use HTTPS with HttpReceiveHttpRequest()?)