classifiers
一词的含义是什么?它来自Jars吗?例如在sbt-assembly
插件中:
artifact in (Compile, assembly) ~= { art =>
art.copy(`classifier` = Some("assembly"))
}
最佳答案
Maven将classifier
定义为项目坐标的第五个元素,仅次于groupId
,artifactId
,version
和packaging
。
更具体地说(来自maven documentation,重点是我的):
例如,Maven Central不仅包含常规(不带分类符)scala-library-2.10.2.jar
,而且还包含
scala-library-2.10.2-javadoc.jar
,按约定包含文档(即使在这种情况下,它包含scaladoc而不是javadoc),scala-library-2.10.2-sources.jar
。 这两个额外的工件是通过分类器发布的。
SBT还允许您将分类器添加到依赖项。从文档中:
libraryDependencies += "org.testng" % "testng" % "5.7" classifier "jdk15"
在您的情况下,似乎sbt-assembly插件会覆盖所有分类器(仅在组装任务中)以将它们设置为assembly
。