classifiers一词的含义是什么?它来自Jars吗?例如在sbt-assembly插件中:

artifact in (Compile, assembly) ~= { art =>
  art.copy(`classifier` = Some("assembly"))
}

最佳答案

Maven将classifier定义为项目坐标的第五个元素,仅次于groupIdartifactIdversionpackaging
更具体地说(来自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

    10-07 13:21
    查看更多