Maven用于其他语言?
我对Java和Maven的世界相对较新,但我无法想象在不使用Maven的情况下启动新的Java项目。
提供人类可读的项目模型的想法是我认为在许多语言中普遍需要的。 当您的应用程序依赖于众多外部库时,尤其如此。
是否有其他项目管理或构建工具用于Java以外的语言,与Maven性质相似; 也就是说,它为项目维护者提供了一种机制来指定依赖关系和构建顺序?
这是我所知道的一些。 至于它们是否是最适合某种语言的工具,请形成自己的观点。
- .Net: NMaven和dotnet-maven-plugin
- AspectJ: aspectj-maven-plugin (我知道Java仍然是值得一提的)
- c / c ++: native-maven-plugin使用gcc,msvc等编译器编译…
- Google Web Toolkit gwt-maven-plugin
- PHP: Maven for PHP
- Ruby: Ruby on Maven
- Scala: maven-scala-plugin
- Flex和Air: Flexmojos
可以使用exec-maven-plugin来调用相关编译器并将执行绑定到编译阶段来处理任意“集成”。
还有类似Maven的产品,例如Byldan for .Net
在Pascal的建议中更新了Flex Mojos和dotnet-maven-plugin。
就设置项目依赖性而言,Python setuptools的工作方式与Maven类似。 如果指定的依赖项可用作egg,tars或zip文件,则可以在安装或运行时自动引入它们。
我知道有几个Maven插件用于编译GWT, gwt-maven和gwt-maven-plugin 。
还有这个maven-scala-plugin 。
我敢肯定,如果你进行搜索,你会发现它适用于大多数流行的JVM语言。
当然,还有用于.NET的NMaven 。 我从来没用过它。
你真的不需要花哨的插件来管理可以从命令行执行的任何事情。 作为一个例子,我使用本教程中描述的技术将Maven构建在管理不善的.NET项目中 。 基本上 – 正如我所提到的, exec
, antrun
, assembly
和dependency
等插件可以一起使用 – 几乎可以做你需要的一切。 当然有专门的,有针对性的插件,但我发现这些插件很难用于现有的遗留物
Phing是与Ant等效的PHP。 它(显然)不是Maven,但PHP没有与Java相同的库(jar)管理问题。