• CPMake


    CPMake是一个Java开发的类似于GNU make的构建工具可以用于C, C++, Java, C#, XSL ...等。它的构建文件用Java脚本语言(可以是BeanShell, Rhino, Jython and Groovy)来编写以便增加灵活性。因此用户可以根据自己的项目来定制make文件。
    点击次数   官方主页【官方主页】   下载地址【下载地址】

    网友留言/评论

    我要留言/评论

    相关开源项目

    ControlTier: 一个开源、跨平台的构建/部署服务器的自动化框架,可以在多个节点、多个应用层上进行服务扩展及管理等工作。
    GenJar:GenJar用来生成Jar文件是一个特殊的ANT任务.它依据于类与类之间的从属关系来生成Jar文件而不是简单地依据于一个目录中的内容.
    Ivy:Ivy是一个免费基于Java的依赖管理器。它提供了一些强大的功能包括依赖传递,ant集成, maven存储库兼容,持续集成,html报告等。
    LuntBuild:LuntBuild是一个强大自动构建的工具。通过一个简洁的web接口就可以很容易地进行系统的持续构建。在线演示Demo:http://luntbuild.ellisonbrookes.com/luntbuild-login.jsp 登录的用户名与密码都是demo。
    Gant:Gant是一个基于Ant的构建工具,它采用Groovy脚本代替XML来编写构建逻辑。 Gant完全依赖于Ant task来做真正的事情,所以你如果用Ant实现构建,但不喜欢用XML构建文件,Gant是一个不错的选择。
    Ant:Ant是apache软件基金会jakarta项目中的一个子项目类似于linux下的Make,由于是基于java编写的,因此具有很好的跨平台性。Ant由一些内置任务(task)和可选择的任务组成(还可以编写自己的任务),使用Make时,你需要写一个Makefile文件,而用ant时则需要写一个build.xml文件。
    Rant:Rant代替远程ANT,它是一个分布式编译系统。它允许一个ANT文件去编译另外一个系统并可接收发生的异常。
    Continuum:Continuum可用于Java项目构建的持续集成,使用简单。它内置支持Maven 2,Maven 1, Ant和Shell Scripts.
    Cruise Control:CruiseControl是一个针对持续构建程序(项目持续集成)的框架,它包括一个email通知的插件,Ant和各种各样的CVS工具。CruiseControl提供了一个Web接口, 可随时查看当前的编译状况和历史状况
    Maven:Apache Maven一个潜在的基于java的apache ant的构建工具的替代者。两者之间的比较:
    第一:ant脚本是可以直接运行在maven中的。maven和ant最大的差别就是在于maven的编译以及所有的脚本都有一个基础,就是POM(project object model)。这个模型定义了项目的方方面面,然后各式各样的脚本在这个模型上工作,而ant完全是自己定义,显然maven更胜一筹。
     第二:Maven对所依赖的包有明确的定义,如使用那个包,版本是多少,一目了然。而ant则通常是简单的inclde 所有的jar。导致的最终结果就是,你根本无法确定JBoss中的lib下的common-logging 是哪个版本的,唯一的方法就是打开 META-INF 目录下MANIFEST.MF。估计JBoss迟早会转向Maven的。
     第三:Maven是基于中央仓库的编译,即把编译所需要的资源放在一个中央仓库里,如jar,tld,pom,等。当编译的时候,maven会自动在仓库中找到相应的包,如果本地仓库没有,则从设定好的远程仓库中下载到本地。这一切都是自动的,而ant需要自己定义了。这个好处导致的结果就是,用maven编译的项目在发布的时候只需要发布源码,小得很,而反之,ant的发布则要把所有的包一起发布,显然maven又胜了一筹。
    第四:maven有大量的重用脚本可以利用,如生成网站,生成javadoc,sourcecode reference,等。而ant都需要自己去写。试试 maven site 的效果。
    第五:maven目前不足的地方就是没有象ant那样成熟的GUI界面,不过mavengui正在努力中。目前使用maven最好的方法还是命令行,又快又方便。
    MavenIDE网站提供了各种流行开发工具下相应的插件