dco*_*ish 5 java maven-2 jflex jflex-maven-plugin
我一直是Make构建系统的长期用户,但我决定开始学习Maven构建系统.虽然我已经阅读了大多数在线文档,但似乎没有人能够给出我正在寻找的类比.我理解系统的生命周期,但我没有看到一个编译步骤依赖项的引用.例如,我想生成一个JFlex语法作为编译生命周期步骤的一部分.目前,我认为无法将该步骤作为预编译阶段.文档似乎在这方面受到限制.一般来说,步骤依赖的概念似乎被烘焙到Maven中,并且需要插件才能进行任何更改.是这样的吗?我缺少什么,因为目前Maven构建系统在如何设置编译步骤方面似乎非常有限.
你可以在 Maven 中做任何事情。它通常有一个默认的方式来完成每件事,然后如果你想做一些特殊的事情,你可以挂钩并覆盖。有时需要大量的堆栈溢出和绞尽脑汁才能弄清楚。
甚至还有一个官方的JFlex Maven 插件。
只要有可能,就找一个能用 Maven 插件实现你想要的功能的人。即使它不是 100% 正确,它至少可以让你了解如何让 Maven 做某事。
最低配置
此配置为 src/main/jflex/ 及其子目录中找到的所有语法文件( .jflex 、 *.jlex 、 *.lex 、 .flex )生成解析器的 java 代码。生成的Java源代码的名称和包是语法中定义的。生成的 Java 源代码放置在 target/ generated-source/jflex 中,位于遵循 Java 包名称约定的子目录中。pom.xml
<project>
<!-- ... -->
<build>
<plugins>
<plugin>
<groupId>de.jflex</groupId>
<artifactId>jflex-maven-plugin</artifactId>
<version>1.6.0</version>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<!-- ... -->
</build>
<!-- ... -->
</project>
Run Code Online (Sandbox Code Playgroud)
这感觉像是行家做事的方式。将您的内容放在正确的文件夹(src/main/flex)中,该插件将自动将其构建到您的项目中。如果你想做更高级的定制东西,有一些选择。但 Maven 的重点是约定优于配置。
| 归档时间: |
|
| 查看次数: |
568 次 |
| 最近记录: |