gpt4 book ai didi

java - 从 GNUMake 迁移到 Maven

转载 作者:搜寻专家 更新时间:2023-10-31 20:15:57 25 4
gpt4 key购买 nike

我长期以来一直使用 Make 构建系统,但我决定开始学习 Maven 构建系统。虽然我通读了大部分在线文档,但似乎没有一个能给我我正在寻找的类比。我了解系统的生命周期,但我没有看到对编译步骤依赖项的引用。例如,我想生成一个 JFlex 语法作为编译生命周期步骤的一部分。目前,我看不到使该步骤成为预编译阶段步骤的方法。文档似乎仅限于此。一般来说,步骤依赖的概念似乎融入了 Maven 并且需要一个插件来进行任何更改。是这样吗?我错过了什么,因为目前 Maven 构建系统在如何设置编译步骤方面似乎非常有限。

最佳答案

您可以在 Maven 中做任何事情。它通常有一个默认的方式来做每件事,然后如果你想做一些特殊的事情,你可以 Hook 并覆盖。有时需要大量的 Stack Overflowing 和挠头才能弄明白。

竟然还有官方JFlex Maven plugin .

只要有可能,找一个让 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>

这感觉就像行家做事的方式。把你的东西放在正确的文件夹 (src/main/flex) 中,这个插件会自动将它构建到你的项目中。如果你想do fancier custom stuff, there are some options .但 Maven 的宗旨是约定优于配置。

关于java - 从 GNUMake 迁移到 Maven,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4004813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com