有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Maven替换?

作为Maven Java构建工具集的替代品,您有什么建议?只是简单的蚂蚁脚本?烤饼


共 (6) 个答案

  1. # 1 楼答案

    虽然我喜欢Maven的想法,但我总是发现自己在为最简单的配置之外的任何东西而奋斗。它的架构是基于插件的,插件的质量差异很大。文档充其量是粗略的;有一半的时间我都不知道我读的是Maven 1还是Maven 2。你有多少次不得不使用maven-ant-plugin来做一些基本的事情

    我已经使用Apache Ivy大约一年了,我对它非常满意。不过,还有一点学习曲线。但是有一个活跃的邮件列表,作者的反应非常积极

    我最后做的是编写一个由几个简单的Ant目标组成的“库”,比如“resolve”、“compile”、“install”等,它们希望事情在标准的Maven位置(比如src/main/java),然后<import>将目标放入我的各种项目中。通过这种方式,您可以充分利用这两个世界——Maven风格的配置和Ant的所有功能

  2. # 2 楼答案

    我在我的一些项目中使用了buildr。非常简洁易读的构建脚本(没有xml),并且它使用maven repos(maven 1和maven 2只需花费很少的精力)

    我在为一些项目寻找后maven1时代的东西,m2并没有那么吸引人。Maven已经把所有m1用户都抛在脑后,他们需要重做所有的构建系统(据我所知,我的一些系统不能用m2来表示)

  3. # 3 楼答案

    我非常喜欢使用ant4eclipse——你可以像平常一样在eclipse中设置你的项目依赖项,你可以编写一个ant脚本,以正确的顺序构建所有项目

    对于第三方库,您可以设置一个包含(并导出)所有jar的eclipse项目(我不建议这样做),或者为每个第三方库设置一个单独的项目,导出jar。[我推荐后一种b/c,您可以跟踪项目->;第三方DEP,并在需要时升级部件。]

  4. # 4 楼答案

    这取决于你用什么。Maven 1?Maven 2?我发现Maven 2在与Ant任务和一些自制Java插件结合使用时,文档记录得很好,而且功能相当强大

    有一些Ant任务可以使用Ant:http://maven.apache.org/ant-tasks/index.html中的Maven特性。所以你真的不需要写你自己的“图书馆”

    你可以从Maven调用Ant:http://maven.apache.org/plugins/maven-antrun-plugin/

    还可以使用Groovy编写脚本,例如:http://groovy.codehaus.org/GMaven+-+Executing+Groovy+Code

    或者只需为所需的自定义位编写Java代码:http://maven.apache.org/guides/plugin/guide-java-plugin-development.html

    当你能做到的时候,没有理由不混搭;)

  5. # 5 楼答案

    我喜欢将Ant与Ivy结合使用。Ivy使用Maven存储库获取库依赖项,而无需强迫您更改整个构建系统以适应Maven

  6. # 6 楼答案

    如果我希望在构建中实现复杂的构建目标,我会选择buildr。好处是,您完全不依赖任何特定的库。你拥有Ruby的所有API,可以做任何你想做的事情;与常春藤不同的是,在这种情况下,你仍然与蚂蚁息息相关。如果您想将库依赖性引入到一个已经建立的基于蚂蚁的构建机制中,那么迁移到Ivy的努力是值得的,该机制可以完成所有您想做的操作