首页 文章

从Git将Maven项目导入Eclipse

提问于
浏览
94

如何从选择从Maven和Git导入并让Eclipse正确生成我的项目?

为了让我的项目进入Eclipse,我可以选择File-> import-> maven然后我将所有Maven项目导入并且可以构建正常,或者我可以选择File-> import-> git并创建一个忽略pom的新项目.xml并没有正确生成项目 .

看来我可以做其中一个但不能两者结合,所以我得到一个正确生成的项目 .

13 回答

  • 11

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

    • 你无法安装m2e-egit(我在Juno中收到错误)

    • 将一般项目(连接到您的Git存储库)转换为Maven项目对您不起作用(Import Maven Projects步骤似乎很重要)

    • 从文件系统上的存储库导入Maven项目未显示连接到Git的项目 .


    • Git Repository Exploring 透视图中设置您的Git存储库 .

    • 切换到Java透视图, Import > Existing Maven Projects

    • 浏览到文件系统中的Git checkout,选择包含pom.xml文件的目录 . 完成导入;你'll notice these projects aren'吨连接到Git . :-(

    • 删除这些项目,但 DO NOT DELETE FROM FILESYSTEM . 我们不希望删除我们的克隆;此任务还会留下.project文件,以便我们可以在下一步中导入 .

    • 回到 Git Repository Exploring 视角 .

    • 右键单击您的存储库, Import Projects...

    • 选择 Import existing projects

    • 在下面的资源管理器中,浏览并选择包含pom.xml(和.project文件)的目录,然后单击“下一步” .

    • 继续完成向导 .

  • 37

    在Egit中检出我的分支后,我切换到Java View,然后使用File - > Import,Git - > Git中的Projects,然后选择了顶级maven目录 . 这与Eclipse Kepler有关 .

  • 3

    无需为Mylyn安装任何其他连接器即可导入:

    • 打开 Git Repositories 视图(Window-> Show view-> Git Repositories)

    • Clone a Git Repository 按钮继续执行所有步骤

    • 在新创建的存储库中展开 Working Directory ,右键单击包含项目的文件夹,然后选择 Import Projects . 然后选择 Import existing projects ,或选择 Import as general project . 如果需要,导入后右键单击您的项目并选择配置 - >转换为Maven项目(和Maven->更新项目) .

  • 1

    Eclipse Indigo M2Eclipse 1.0让它变得非常简单 .

    如果您还没有M2Eclipse的Git连接器,请安装它 . M2Eclipse将通过在“导入”菜单上提示您来帮助您 .

    • 从Package Explorer视图中选择"Import..."上下文菜单

    • 在Maven类别下选择"Check out Maven projects from SCM"选项

    • 在显示的窗口中,选择“在m2e市场中查找更多SCM连接器”链接

    • 查找Git连接器...安装...重启

    请注意,在搜索框中,您可能需要输入“EGit”而不是“Git”才能找到正确的连接器 .

    完成后,只需转到EGit存储库,打开Working目录的上下文菜单,然后选择“Import Maven projects ...” .

    完成!

  • 5

    我一直在测试我的项目 .

    • Eclispe Indigo

    • "Help > Install New Software"在"Eclipse Git Plugin .."启用/安装官方Git插件并安装该批次 .

    • 使用这些说明启用Maven / EGit连接器How do you get git integration working with m2eclipse?

    • 切换到Git Repository透视图 . 右键单击粘贴项目git url . 默认值应该都有效 . 您可能想要更改它猜测的安装文件夹 .

    • 展开克隆的存储库并右键单击"Working Tree"并选择"Import Maven Projects..." .

    • 切换到Java透视图 . 右键单击该项目,然后选择"Team > Share Project" . 选择"Git"并确保勾选方框"Use or create repository in parent folder of project" .

  • 1

    你不能把它作为一个git项目导入然后(如果你安装了m2eclipse)右键单击Package Explorer> Maven > Enable Dependency Management 中的项目?

  • 1

    您可以通过import-> maven命令不断生成项目元数据,而只需生成一次项目元数据,并将其与其他源代码一起放在git存储库中 . 之后,使用import-> git命令将导入正确的maven启用的项目,假设您已安装maven工具 .

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

  • 15

    第1步:设置Eclipse

    首先,您需要安装一些Eclipse插件 . 因此,请在 help dropdown menu → Install new software 中使用eclipse IDE软件安装功能,并添加指向可用软件站点的链接,然后进行安装 .

    从M2E市场安装(设置→Maven→发现→打开目录并搜索“m2e-egit”)


    第2步:克隆知识库

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

    从Git查看非日食Maven项目(文件→导入..→Maven→从SCM查看Maven项目)

    File → Import.. → Maven → Check out Maven Projects from SCM

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

  • -3

    我有一个maven项目,有三个子模块,用git管理 . 我按照以下方式在日食中设置它们:

    • 我使用EGit在eclipse中注册了git存储库

    • 我将项目导入为现有的Maven项目

    • 对于每个项目,我去了 Team | Share Project .

  • 97

    我将通过命令行(Eclipse外部)执行git clone,然后使用File - > Import ... - > Existing Maven Projects .

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

  • 4

    截至此(更新)撰写,工作设置如下:

    • Eclipse 3.8(Eclipse Indigo更新站点)

    • EGit 1.3.0(Eclipse Indigo更新站点)

    • m2e 1.0.200(Eclipse Indigo更新站点)

    • m2e-egit 0.14.0(添加连接器时的m2e市场)

    在Ubuntu Raring上测试 .

    你当然可以“导入” - >“Maven” - >“从SCM查看Maven项目”,这是最快捷的方式 . 但是,此类直接导入目前无法控制克隆的存储库文件夹名称 . 您可能最好从“Git存储库”视图工作并执行“从Git存储库克隆并将克隆添加到此视图”,然后从此克隆执行“导入Maven项目”;最长的方法是进行手动克隆,然后“将现有的本地Git存储库添加到此视图”,然后再进行“导入Maven项目” . 无论哪种情况,您都可以完全控制克隆的文件夹 .

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

  • 2

    我更喜欢将项目作为 maven 项目而不是 git 项目导入Eclipse . 这样做仍然允许将项目内容识别为git内容 . 您可以继续从Eclipse执行git操作 . 正如你所提到的,事实并非如此 .

    Eclipse中项目的性质不是基于持有项目的SCM,而是基于项目类型 - 无论是战争还是 jar 等 - 当项目作为maven项目导入时自动确定 .

    我会对签入SCM IDE特定的元数据犹豫不决 . 这样做会假设很多事情 - 所有开发人员都使用相同的IDE或IDE版本(可能是相同版本的JDK / JRE),他们在整个项目生命周期中继续使用相同的版本,依此类推 .

  • 17

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

相关问题