我目前正在一个由5名大学同事组成的团队中开展Java项目。实际上,我们将在接下来的几天内完成规划阶段,然后开始实施。
对于该项目,我们必须使用Mercurial(通过Bitbucket.org)和Apache Maven。我们想将Eclipse用作IDE。我知道如何使用Mercurial,我已经阅读了一些关于Maven的文章和指南。我不明白的是我们应该如何合作使用这些工具。
应该在存储库中放置什么?整个Eclipse项目?或者只是源文件和Maven的pom.xml?如果是后者,工作会话会是什么样子?拉动文件,使用mvn eclipse:eclipse创建一个Eclipse项目,编写一段时间并将它们提交/推送到repo?
我负责创建项目结构,所以我和我的同事也可以开始开发。但我真的不知道如何开始。如果使用Maven不是强制性的,我只需将Eclipse项目放入存储库即可。但是不得不使用它,现在我很困惑如何影响一切。
答案 0 :(得分:8)
我使用类似的设置,除了我使用Dropbox作为我的存储库(只有两个开发人员)。只需按照以下步骤操作,使用m2eclipse(更新网站:http://m2eclipse.sonatype.org/sites/m2e)和MercurialEclipse(更新网站:http://cbes.javaforge.com/update)插件即可在日食中完成所有操作。
创建一个maven项目:
档案 - >新 - >其他 - > Maven项目
在Project explorer中,右键单击新创建的maven项目
团队 - >分享项目...... - > Mercurial - > (保留文件夹)完成
然后在项目根目录中创建一个.hgignore文件:
在Project explorer中,右键单击新创建的maven项目
新 - >档案 - >文件名:.hgignore和完成
.hgignore:
syntax: regexp
target # maven output
\.classpath # eclipse
\.project # eclipse
\.settings # eclipse
test-output # eclipse junit/testng plugin output
然后你可以进行第一次提交,但要注意,hg不会在其存储库中存储空文件夹,因此为了保持maven文件夹结构中没有源代码,你必须在每个空文件夹中放入一个(空)文件,对于一个没有任何来源的简单maven项目,它将在文件夹中:
例如,我将一个名为.empty的文件放入其中,内容为“这是一个占位符文件,如果其他文件在此文件夹中则删除”
如果缺少某些文件夹,您的同事会在导入项目时看到eclipse中的错误。
第一次提交:
在Project explorer中,右键单击新创建的maven项目
团队 - >提交...... - >选择全部并输入提交消息 - >完成
现在你可以将它克隆到bitbucket(我没有bitbucket的经验)。
告诉你的同事安装两个eclipse插件然后他们可以通过
获得repo档案 - >新 - >其他 - >从SCM查看Maven项目 - >输入您的回购网址 - >完成
然后你很高兴。
答案 1 :(得分:2)
以下是基于ASF实践的替代方案(尽管我们不使用Mercurial)。
首先,设置一个包含Maven构建的源树,并将其检入Hg。不要触摸日食。你想找到一些Hg的Eclipse插件。
然后,看看两个选择:maven-eclipse-plugin和M2eclipse。
maven-eclipse-plugin是一个maven插件。您从命令行运行它,它会生成.project和.classpath以及一些.settings。它目前尚未开发,但在许多常见情况下它非常稳定且功能齐全。然后导入“现有的Eclipse项目”,你就可以了。
M2Eclipse是一个集成了Maven构建的 Eclipse 插件。这是雄心勃勃的。然而,它目前的化身是相当新的,并且可以充满惊喜。