我一直是Make构建系统的长期用户,但我决定开始学习Maven构建系统.虽然我已经阅读了大多数在线文档,但似乎没有人能够给出我正在寻找的类比.我理解系统的生命周期,但我没有看到一个编译步骤依赖项的引用.例如,我想生成一个JFlex语法作为编译生命周期步骤的一部分.目前,我认为无法将该步骤作为预编译阶段.文档似乎在这方面受到限制.一般来说,步骤依赖的概念似乎被烘焙到Maven中,并且需要插件才能进行任何更改.是这样的吗?我缺少什么,因为目前Maven构建系统在如何设置编译步骤方面似乎非常有限.
我一直是Make构建系统的长期用户,但我决定开始学习Maven构建系统.虽然我已经阅读了大多数在线文档,但似乎没有人能够给出我正在寻找的类比.我理解系统的生命周期,但我没有看到一个编译步骤依赖项的引用.例如,我想生成一个JFlex语法作为编译生命周期步骤的一部分.目前,我认为无法将该步骤作为预编译阶段.文档似乎在这方面受到限制.一般来说,步骤依赖的概念似乎被烘焙到Maven中,并且需要插件才能进行任何更改.是这样的吗?我缺少什么,因为目前Maven构建系统在如何设置编译步骤方面似乎非常有限.
甚至有官方JFlex Maven plugin.
只要有可能,找一个制作Maven插件的人做你想做的事.即使它不是100%正确,它至少可以让你知道如何让maven做某事.
最小配置
此配置为src / main / jflex /及其子目录中的所有语法文件(.jflex,*.jlex,* .lex,.flex)生成解析器的java代码.生成的Java源代码的名称和包是语法中定义的.生成的Java源代码放在target / generated-source / jflex中,位于包名称上的Java约定之后的子目录中.
的pom.xml
这感觉像是做事的maven方式.把你的东西放在正确的文件夹(src / main / flex)中,这个插件会自动将它构建到你的项目中.如果你想要do fancier custom stuff,there are some options.但Maven就是赞成约定优于配置.