maven 中的Classifier

      Classifier可能是最容易被忽略的Maven特性,但它确实非常重要,我们也需要它来帮助规划坐标。设想这样一个情况,有一个jar项目,就说是  dog-cli-1.0.jar  吧,运行它用户就能在命令行上画一只小狗出来。现在用户的要求是希望你能提供一个zip包,里面不仅包含这个可运行的jar,还得包含源代码和文档,换句话说,这是比较正式的分发包。这个文件名应该是怎样的呢? dog-cli-1.0.zip ?不够清楚,仅仅从扩展名很难分辨什么是Maven默认生成的构件,什么是额外配置生成分发包。如果能是 dog-cli-1.0-dist.zip 就最好了。这里的dist就是classifier,默认Maven只生成一个构件,我们称之为主构件,那 当我们希望Maven生成其他附属构件的时候,就能用上classifier 。常见的classifier还有如 dog-cli-1.0-sources.jar 表示源码包, dog-cli-1.0-javadoc.jar 表示JavaDoc包等等。制作classifier的方式多种多样,其中最重要的一种是使用 Maven Assembly Plugin ,感兴趣的读者可以进一步研究。

你可能感兴趣的:(maven)