当前位置:  开发笔记 > 前端 > 正文

使用Ant的Maven

如何解决《使用Ant的Maven》经验,为你挑选了4个好方法。

是否有包装maven的ant插件,以便我可以利用其依赖管理功能为我下载jar并将它们放在我的ant build的lib文件夹中?

我的具体问题是我正在使用Hudson的Crap4j插件,但它还没有支持Maven.由于这是一个小项目,maven是矫枉过正,但mvn dependency:copy-dependcies如果我不需要,我不想没有.

有什么建议?(除了吮吸它)



1> Tim O'Brien..:

有一组使用Mercury的新Ant任务.Mercury是重构代码,它将成为Maven 3与Oleg Gusakov正在实施的Maven(和OSGi)存储库交互的方式的基础.Mercury经过了充分测试,您可以立即开始在Ant项目中使用它.看一下Oleg编写的一些How-to文档:

http://people.apache.org/~ogusakov/sites/mercury-ant/mercury-ant-tasks/howto.html

这是在Ant build.xml文件中使用Mercury的简单示例.以下构建文件创建一个依赖于asm工件的verion 3.0的类路径:


   
    
      
    
  

有许多高级功能,例如支持验证PGP签名或MD5摘要.您还可以开始定义Mercury所依赖的不同存储库.除了使用本地目录作为存储库之外,此XML还允许您定义对诸如Nexus之类的存储库的引用:





   
    
      
    
  

如果您需要引用需要身份验证的存储库,Mercury支持存储用户名和密码:


  



   
    
      
    
  

最引人注目的是能够从Ant构建文件将工件发布到存储库.如果您在任何规模的组织中工作,您将需要开始考虑将工件部署到像Nexus这样的存储库管理器.使用Mercury,您可以开始将工件部署到存储库管理器,而无需采用Maven.这是一个构建文件,用于定义经过身份验证的存储库并编写工件:


  



Mercury已经可以使用,你可以期待Oleg的许多发展.如果你想开始使用它,最好看的地方是Oleg的操作方法页面.(注意:此信息很快将整合到权威指南中)



2> Dominic Mitc..:

虽然汞任务有效,但我还没有使用它们.我和他们的前任,maven-ant-tasks取得了很大的成功.如果你已经有一个POM方便的话,它们很容易上手.


  
  
  
    
      
    
  
  
      
      
          
      
      
      
          
          
          
      
  

我喜欢将我的ant任务jar放在项目中,所以我添加了taskdef和path.但是,如果你想放maven-ant-tasks-2.0.9.jar~/.ant/lib,那么你并不需要声明这个东西.我认为.



3> Vladimir..:

如果您认为Maven在您的项目中过度,您可以/应该尝试Apache Ivy:它是一个非常强大的依赖管理库,类似于Maven.

如果您在网络上托管项目,请查看Ivy Roundup,它是各种库的常春藤定义的存储库.


那怎么可能是正确的答案?

4> whaley..:

只需使用Maven Ant Tasks.它们可以在普通的maven下载页面下载.


+1 - 它是2012年和maven-ant-tasks是我发现通过ant使用依赖管理的最佳方式.几年前我曾认真地尝试使用常春藤,但最终还是放弃了它,只是为了蚂蚁专用项目和maven-ant-tasks,如果可能的话.Ivy只是重新实现了基本的maven想法而没有额外的好处,除了一个不同的名字(这对许多人来说已经足够卖点).但是今天,更多的项目简单地(是的,简单地)使用maven并且只针对角落案例(imo)使用ant.如果代码将被(重新)使用,请尽快使用poroject.
推荐阅读
手机用户2402851335
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有