使用maven进行perl项目

时间:2012-07-02 15:25:11

标签: perl maven maven-plugin

我们已经看到Maven对我们基于Java的项目表现很好。我从this question看到,非java项目也可以作为maven模块进行改造,尽管他们只会使用maven-exec-plugin来实现不同的目标。在谷歌搜索,我看到maven-perl-plugin,但它仍然是一个1.0-SNAPSHOT与零星的更新,但肯定看起来很有希望。有没有人使用这个或任何其他竞争对手,这将减轻我写无趣的pom锅炉板?

编辑:实际上项目的主要部分是n层Java模块,并且有一个非常小的perl / python组件(用于后端解析),我正在寻找一个适合这个生态系统的地方。我喜欢使用maven-release-plugin来做标记/分支创建和发布过程,并将它作为相同代码库的一部分给我版本号一致性。因此,虽然我不打算使用maven的依赖检索方法来实现perl模块(抱歉我没有对maven-perl-plugin boy进行足够的研究),但我想知道在考虑时要记住的要点是什么。做这样的事情(或者如果这样的事情没有意义),例如什么应该是模块名称( topLevelModuleName -perl?)和src / main / perl和src / test / perl下面的结构。我知道我可能会在一个滑坡上试图将一件东西卖给另一件,但是不要害怕问:)

3 个答案:

答案 0 :(得分:1)

那太疯狂了。使用类似于Module :: Build的东西,并且依赖关系使用CPAN(或cpanm)。说真的,对于任何不是Java的东西,你必须为加载疯狂的插件编写XML加载。使用Module :: Build(或任何脚本),您可以对构建进行编程,并且可以使用任何可用于该语言的库(您只需要使用cpanm获取它们)。

答案 1 :(得分:1)

此时,我倾向于不使用maven-perl-plugin作为其依赖功能,因为它似乎与很多成熟的对等体(如Dist :: Zilla和Module :: Build)重叠。由于没有人真正对编辑发表评论,因此我将保留现有的项目结构,如

<perl-module-name>
    -lib
    -etc
    -bin

除了添加pom文件并将tarball创建为输出工件外,并没有真正改变任何其他内容。

随意发布任何其他建议。

答案 2 :(得分:0)

我已经快速浏览了一下这个插件,我没有看到只是为了管理你的项目而引入像Java和XML这样的依赖关系。

实际上我认为我们已经有了更多更好的东西:Dist::Zilla。设置项目就像dzil new My::Project一样简单 - 而Dist::Zilla负责其他所有事情。

不再有Makefiles,README,MANIFESTs ......只需输入dzil build/test/install/release,一切都将根据您的个人资料和dist.ini完成。

如果您遗漏了CPAN的某些依赖项,请将其添加到您的配置中,cpanminus可以顺利集成到您的新工作流程中。

[alias]
    instdeps = install --install-command "cpanm ."