2013-09-24 23 views
0

,每个人对各自的(本地)Windows机器下列要求:Maven的 - 给定一组开发人员一个建立查询

  1. 通过像Eclipse,STS等,运行spring,hibernate的集成开发环境等项目
  2. 快速建立,部署,运行,如果需要改变,重建和重新部署(一切,优选经由IDE)中在Github可用的项目

有以下约束/目标:

  1. 的个人开发者机器已经限制或无法上网
  2. 开发商必须从将存储在整个团队中需要的jar一个位​​置需要的jar
  3. 在需要时,开发人员必须能够拉更新从中央位置罐子到他的当地环境,并继续运行项目无缝
  4. 在IDE中,建立一个Github上项目并运行它(本地)

附上给的一个明确的概念形象工作环境我正在设想的!

我已经开始阅读Maven,但相当不知所措 - 我该如何继续?

Desired set-up

回答

1

正如另一个答案建议由桑德费尔哈亨,你应该做的是使用存储库代理。 Nexus和Artifactory是最着名的一个。下面我就简要说明你正在寻找的步骤,你需要做的:

  1. 设置的Nexus机M
  2. 在连结,建立一个代理库中央(这应该可以出箱)以及您希望开发人员访问的其他存储库。在配置Repo Proxy时,您可能需要添加http代理设置。
  3. (可选,但建议)设置一个存储库组,其包括所有的公共库代理。此代理组的假定URL是http://M/nexus/groups/public
  4. 在开发人员的机器,更新〜/ .m2目录/ settings.xml中,设置作为http://M/nexus/groups/public的中央的镜子。如果您在Nexus中创建了其他内部托管存储库,则也可以在settings.xml中添加它们。

就是这样。你可以像平常一样使用Maven。现在可以从Nexus中获取依赖关系。

2

你应该使用内部Maven仓库。有这样的应用程序NexusArtifactory(这些可能是业务中的数字1和2,只是我的意见)。您可以设置它来使用您的代理服务器。

它将能够作为您的Maven客户端的代理,并保留下载的工件副本。他们甚至可以让你控制你的开发者吸引什么样的工件(虽然他们可能并不总是明白这一点)。

它也将能够存储和提供您自己的工件,您的开发人员可以deployrelease)。

Maven擅长依赖管理,这是大多数组织开始使用它的原因。但随着流程的成熟,使用Maven进行版本/发布管理也是一个机会。开发人员将自行构建SNAPSHOT版本,或通过存储库与团队共享这些版本。当他们的工件出现时,他们会在存储库中制作工件的最终版本。

Maven对您的IDE有很大的支持,我自己使用Eclipse很多,其中m2e与Maven一起工作。

阿帕奇本身 'Why do I need a Repository Manager?'


新工具需要适应,有时是文化的转变。对于许多组织来自脚本构建的Maven而言,可能需要进行范式转换。这听起来有点像你将来有可能再被淹没。我认为这值得你的努力,但你可能想要得到一些经验丰富的帮助,让你走上正轨。


更多的是个人的注意事项:与代理服务器完成的,好吧!

+0

考虑到我有机器M(具有Internet连接的主服务器,主服务器必须执行必须的操作),您能列出婴儿步骤休息)和开发者机器d1,d2?我是否必须使用Archive,Nexus等来实现我的设计? –

+0

我认为@Sander给出的信息已经是绰绰有余你开始。为有能力解决问题的成年人提供汤匙喂养是不合理的。无论如何,我会给你一些步骤让你跟随另一个答案。但是,您应该通过学习和搜索工作来了解实际使用的步骤 –

+0

实际上,我不确定Nexus等是否是实现设计的授权,因此需要详细的步骤。 –