0

来自 Maven 文档:

http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html

这是“generate-sources”的描述:生成任何源代码以包含在编译中。

需要生成什么源代码?我所有的源文件都已经创建(由我)?

4

3 回答 3

0

一般来说,是的,您已经拥有所需的所有源文件。但情况不一定如此。

一个简单的例子是,当您使用一些 Web 服务并且需要从 WSDL 生成 java 代码时。例如,请参阅Apache Axis2Apache CXF

于 2013-07-19T08:58:29.943 回答
0

如果您考虑其他项目,例如用于通过语法(ANTLR、JavaCC 等)创建此类 DSL 的项目,或者您可以考虑从中生成其他内容的带注释的源代码(例如来自 Hibernate、JPA2 等)。 ) 或者如果您考虑 WSDL 是从中生成 Java 代码的源等,或者考虑使用 XSD 的项目也从中生成源代码。

这就是具有生成源生命周期阶段的原因。

于 2013-07-19T08:58:35.220 回答
0

某些框架可能会通过生成样板代码来提供帮助。然后他们应该提供 maven 插件来执行映射到generate-sources.

通常,我认为这更好,我们不需要它,因为它使生活有点复杂。尽管 Android 中的 R 资源可能是一个很好的例子。

提示:要查看所有阶段,请键入mvn anything

[错误] 未知的生命周期阶段“sdfsd”。您必须以 : 或 :[:]: 格式指定有效的生命周期阶段或目标。可用的生命周期阶段有:验证、初始化、生成源、流程源、生成资源、流程资源、编译、流程类、生成测试源、流程测试源、生成测试资源, 过程测试资源, 测试编译, 过程测试类, 测试, 准备包, 包, 集成前测试, 集成测试, 集成测试后, 验证, 安装, 部署, 预站点,站点,站点后,站点部署,预清理,清理,清理后。-> [帮助 1]

于 2013-07-19T09:02:08.520 回答