在哪里放置maven构建库的演示/示例代码?

时间:2011-12-05 11:38:07

标签: java maven

我使用maven开发了一个小的java实用程序库。现在,我想添加一些演示/示例代码来展示如何使用该库。

放在哪里的最佳位置?

  • 在包含其他代码的子包中。我不喜欢这样,因为这意味着演示将包含在库jar文件中。

  • 在一个新的maven神器中。这是有效的,但我希望让演示更紧密地连接到图书馆来源。

  • 作为子工件。 Haven还没试过这个。似乎使一切都变得有点复杂,应该很简单。

有没有共同的模式可以做到这一点?

4 个答案:

答案 0 :(得分:5)

如果它是一些自己运行的示例代码片段,只是演示了如何使用该库,那么将它们作为单元测试写在同一个模块中。

如果它更像是一个单独的演示应用程序(用户甚至可能与之交互),则创建一个单独的工件。这是标准的方式。如果你真的想要你可以将它放在同一个模块中,但是在不同的源目录中,但这只会让你自己变得更难。

你的图书馆和你的演示应该共享一个父模块(类型为“pom”,而不是像其他人一样“jar”),给你一个multi-module project。然后你可以通过从这个父模块启动maven来构建它们。

如果你想一起发布你的图书馆和演示(你可以,但你没有),你也可以从父母那里做到。

换句话说,这不是因为它们是单独的模块,打包在不同的工件中,它们不再是紧密连接。多模块项目的不同模块仍然形成一个整体项目。

答案 1 :(得分:2)

你还没有编写它是什么样的实用程序库,但是如果它类似于apache commons,那么大多数演示都可以写成JUnit测试,它们放在同一个工件中。设计良好的JUnit测试既可以测试代码,也可以提供如何使用实用程序的示例。

答案 2 :(得分:1)

我更喜欢新的maven神器,它可以让你自己的神器干净

答案 3 :(得分:1)

我建议创建一个maven多模块项目,其中一个模块是核心,一个模块是演示代码。这样,用户可以选择是否要创建两个模块(它们成为单独的工件),或者是否只是想要核心。