从Git导入Maven项目到Eclipse

我怎样才能得到select从Maven和Git导入的效果,并让Eclipse正确地生成我的项目?

为了让我的项目进入Eclipse,我可以selectFile-> import-> maven,然后获得所有导入的Maven项目,并且可以构build好,或者我可以selectFile-> import-> git,并创build一个忽略pom的新项目.xml并不能正确生成项目。

看来我可以做一个或另一个,但不能结合,所以我得到一个正确生成的项目。

Eclipse Indigo + M2Eclipse 1.0使其非常简单。

如果你还没有安装M2Eclipse的Git连接器, M2Eclipse将通过在导入菜单上提示你来帮助你。

  1. 从Package Explorer视图中select“Import …”上下文菜单
  2. 在Maven类别下select“从SCM签出Maven项目”选项
  3. 在出现的窗口中,select链接“在m2e Marketplace中查找更多SCM连接器”
  4. find连接器Git …安装…重新启动

请注意,在search框中,您可能需要input“EGit”而不是“Git”才能find正确的连接器。

完成后,只需转到EGit存储库,调出工作目录的上下文菜单,然后select“导入Maven项目…”。

完成!

我会通过命令行(在Eclipse之外)执行git clone,然后使用File – > Import … – > Existing Maven Projects

您的项目将被理解为使用Git和Maven。 这是导入IMO最快和最可靠的方法。

截至这(更新)的写作,一个工作设置如下:

  1. Eclipse 3.8(Eclipse Indigo更新站点)
  2. EGit 1.3.0(Eclipse Indigo更新站点)
  3. m2e 1.0.200(Eclipse Indigo更新站点)
  4. m2e-egit 0.14.0(m2e marketplace when adding a connector)

在Ubuntu Raring上进行testing。

你当然可以“导入” – >“Maven” – >“从SCM中检出Maven项目”,这是最快捷的方法。 但是,目前这种直接导入不能控制克隆的存储库文件夹名称。 从“Git Repository”视图开始工作可能会更好,并执行“从Git仓库克隆并将克隆添加到此视图”,然后从此克隆中导入“Import Maven Projects”; 最长的办法是做你的手动克隆,然后“添加一个现有的本地Git仓库到这个视图”,然后再一个“导入Maven项目”。 无论哪种情况,您都可以完全控制克隆的文件夹。

最后对一个问题的评论让我感到沮丧。 据我所知,如果克隆的存储库位于Eclipse工作区的根目录下,并且Maven项目文件层次结构的根目录中有一个POM,则导入此根项目将重命名克隆的文件夹(使用您select的模板,默认值到[artifactId])。 无需更改项目结构,也不需要将文件保留在工作区外,可以通过克隆工作区文件夹的子文件夹轻松解决此问题。


第1步:设置Eclipse

首先你需要安装一些Eclipse插件。 因此,在帮助下拉菜单中→使用eclipse IDE软件安装function→安装新软件 ,并将链接添加到可用软件站点,然后安装。

  1. GIT插件(EGIT) – http://download.eclipse.org/egit/updates
  2. Eclipse Maven插件(M2Eclipse) – http://download.eclipse.org/technology/m2e/releases
  3. Maven单片机处理程序EGit(m2e-egit)

    从M2E市场安装(设置→Maven→查找→打开目录并search“m2e-egit”)


第2步:克隆存储库

从Git克隆(下载)您的Maven项目

从Git(文件→导入..→Maven→签出Maven项目从SCM)检查非Eclipse的Maven项目

文件→导入..→Maven→签出SCM的Maven项目

现在,将您的git存储库链接添加到SCM URI字段。然后单击下一步并完成。

我一直在为我的项目进行testing。

  1. Eclispe靛蓝
  2. “帮助>安装新软件”在“Eclipse Git Plugin”中启用/安装官方Git插件并安装该批次。
  3. 使用这些指令启用Maven / EGit连接器如何使用m2eclipse获得git集成?
  4. 切换到Git Repository透视图。 右键单击粘贴项目的git url。 默认值都应该工作。 您可能想要更改它猜测的安装文件夹。
  5. 展开克隆的存储库,右键单击“工作树”,然后select“导入Maven项目…”。
  6. 切换到Java透视图。 右键单击该项目,然后select“团队>共享项目”。 select“Git”,并确保勾选“在项目的父文件夹中使用或创build存储库”checkbox。

这是我的解决方法,这是解决这些问题的方法:

  • 你不能安装m2e-egit(我在Juno中遇到错误)
  • 将一个通用项目(连接到你的Git仓库)转换成一个Maven项目并不适用于你(Import Maven Projects步骤似乎很重要)
  • 从文件系统的仓库导入Maven项目不会显示连接到Git的项目。

  1. 在“ Git Repository Exploring”透视图中设置您的Git存储
    • 切换到Java透视图, 导入>现有的Maven项目
    • 在文件系统中浏览你的Git checkout,select包含pom.xml文件的目录。 完成导入; 你会注意到这些项目没有连接到Git。 🙁
    • 删除这些项目,但不要从FILESYSTEM中删除 。 我们不希望我们的克隆被删除; 这个任务也将.project文件留下,以便我们可以在下一步导入。
  2. 回到Git Repository Exploring的angular度。
    • 右键单击您的存储库, 导入项目…
    • select导入现有项目
    • 在下面的浏览器中,浏览并select包含pom.xml(和.project文件)的目录,然后单击下一步。
    • 继续完成向导。

导入时不需要为Mylyn安装任何额外的连接器:

  1. 打开Git Repositories视图(Window-> Show view-> Git Repositories)
  2. Clone a Git Repositorybutton,并继续所有步骤
  3. 在新创build的存储库中,展开“ Working Directory ,右键单击文件夹并select“ Import Projects 。 然后selectImport existing projects ,或selectImport as general project 。 如果需要导入后右键单击你的项目并selectConfigure-> Convert to Maven Project(和Maven-> Update Project)。

您应该注意,如果有多个开发人员在代码库上工作,那么将生成的元数据置于版本控制(让它成为git或任何其他scm)不是一个好主意。 两个开发人员可能有完全不同的项目或类path设置。 就像你打算在某个时候分享代码一样

我有一个在git中pipe理的三个子模块的maven项目。 我在eclipse中设置它们如下:

  1. 我使用EGit在eclipse中注册了git仓库
  2. 我将这些项目作为现有的Maven项目导入
  3. 对于每个项目,我去了Team | 分享项目

我宁愿将项目导入Eclipse作为maven项目而不是git项目。 这样做仍然会允许将项目内容识别为git内容。 您可以继续从Eclipse执行git操作。 正如你所提到的,相反是不正确的。

Eclipse中项目的性质不是基于持有项目的SCM,而是基于项目types(无论是战争还是jar等),当项目导入为maven项目时,自动确定项目types。

我会犹豫是否签入SCM IDE特定的元数据。 这样做会承担很多工作 – 所有开发人员都使用相同的IDE或版本的IDE,可能是同一版本的JDK / JRE,在整个项目生命周期中继续使用相同的版本,等等。

你不能导入它作为一个混帐项目,然后(如果你有m2eclipse安装)右键单击项目在包资源pipe理器 > Maven > Enable Dependency Management

在Egit签出我的分支之后,我切换到Java View,然后使用File – > Import,Git – > Git项目,然后select顶层maven目录。 这是与Eclipse开普勒。

通过import-> maven命令不断生成项目元数据,您可以生成一次项目元数据,并将其与您的其他源代码一起放在您的git存储库中。 之后,使用import-> git命令将导入一个适当的maven-enabled项目,假设你已经安装了maven工具。

确保在源代码pipe理系统中放置以“。”开头的项目目录中的所有文件。 如.classpath和.project以及.settings目录的全部内容。