简体   繁体   English

中小型项目的Maven学习曲线和开销?

[英]Maven learning curve & overhead for small/medium projects?

what would be (rough estimation, average, of course) the initial learning and setup curve and subsequent overhead for using Maven for C++/Eclipse/Linux project of small to medium size? 将Maven用于中小型C ++ / Eclipse / Linux项目的初始学习和设置曲线以及随后的开销是多少(当然是粗略的估计,平均)?

We are 4 developers at the beginning of the way. 一开始我们是4个开发人员。 We currently have ~20 native eclipse C++ (CDT) "projects", which we compile interactively. 当前,我们有约20个本机Eclipse C ++(CDT)“项目”,我们可以进行交互式编译。 We would like to have an automated checkout & build script. 我们希望有一个自动结帐和构建脚本。

It seems a bit overkill at this stage, but perhaps we should adopt it sooner then later, provided that it does not incur an overhead. 在现阶段,这似乎有些矫kill过正,但是如果不增加开销,也许我们应该早一点采用它,然后再采用。 We don't have bandwidth for extensive configuration management right now. 目前,我们没有足够的带宽来进行广泛的配置管理。 Thanks a lot! 非常感谢!

EDITED / DETAILED: 编辑/详细:

I realize I haven't described my needs well enough. 我意识到我对自己的需求的描述不够充分。 Having read the references provided below, I see that CI tool seems an overkill for us at the moment. 阅读以下提供的参考资料后,我发现CI工具对我们而言似乎已经过时了。 What I'd like to have is a build tool that is well integrated with eclipse on one hand, and allows offline, non-interactive builds on the other. 我想要的是一种构建工具,它一方面与eclipse很好地集成在一起 ,另一方面又允许脱机,非交互式构建。 I enjoy the simplicity of working with eclipse projects: you just add files, add references to internal components and 3rd part libs as they add up, and that's it. 我喜欢使用Eclipse项目的简单性:您只需添加文件,添加对内部组件和第三部分库的引用,就可以了。 You don't need to manually maintain makefiles or the like. 您无需手动维护makefile等。 The trouble with it, as with MSVS a few years ago when I worked with it, is that it does not give you an option of non-interactive builds. 与几年前使用MSVS时一样,它的麻烦在于它不能为您提供非交互式构建的选择。 So, does such tool exist? 那么,是否存在这样的工具?

First, while Maven has some support to build C++ projects with the maven-native-plugin or, if you already are using Make, with the maven-make-plugin from the c-builds suite, this is not a common use case and there aren't widely used. 首先,虽然Maven支持使用maven-native-plugin或(如果您已经使用Make)和c-builds套件中的maven-make-plugin来构建C ++项目,但这并不是一个常见的用例。没有被广泛使用。 So while it should be possible, you won't get support and find resources easily (just Google a bit or browse the maven users list to get an idea). 因此,尽管有可能,但您将不会获得支持和轻松地找到资源(只需一点点Google或浏览Maven用户列表以获取想法)。

Second, if you add to this that you'll have to learn Maven in the same time, then it seems reasonable to say that you are not taking the easiest path. 其次,如果您还必须同时学习Maven,那么可以说您没有走最简单的道路。

So, instead, I'd stick with more traditional tools and/or Ant. 因此,我会坚持使用更多传统工具和/或Ant。 For the continuous integration itself, I've seen several references mentioning the use of CruseControl to build a C++ project. 对于持续集成本身,我已经看到一些参考资料,其中提到使用CruseControl来构建C ++项目。 Refer to What continuous integration tool is best for a C++ project? 请参阅哪种持续集成工具最适合C ++项目? or UsingCruiseControlWithCplusPlus for example. 或使用UsingCruiseControlWithCplusPlus But I guess the principles are transposable to another CI engine (like Hudson that I find much more easy to use than CruiseControl). 但是我猜想这些原理可以转换为另一个CI引擎(例如Hudson,我发现它比CruiseControl更易于使用)。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM