SBT:如何使自定义任务显示在任务列表中?

SBT:如何使自定义任务显示在任务列表中?,sbt,Sbt,如果我在SBT 0.13中定义了一个简单任务,那么当我运行tasks或甚至tasks-v或tasks-vv时,它不会出现在列表中。我必须运行tasks-vvv或tasks-V才能看到它,但在这里,它隐藏在数百个其他任务中。我的假设是,我的自定义项目任务将是最重要的 lazy val foo = taskKey[Unit]("Bar.") foo := { println("Hello World!") } 有什么方法可以提高我的任务的重要性,使它出现在顶级任务列表中吗?对于项目的新开发

如果我在SBT 0.13中定义了一个简单任务,那么当我运行
tasks
或甚至
tasks-v
tasks-vv
时,它不会出现在列表中。我必须运行
tasks-vvv
tasks-V
才能看到它,但在这里,它隐藏在数百个其他任务中。我的假设是,我的自定义项目任务将是最重要的

lazy val foo = taskKey[Unit]("Bar.")
foo := {
    println("Hello World!")
}

有什么方法可以提高我的任务的重要性,使它出现在顶级任务列表中吗?对于项目的新开发人员来说,不需要太多的挖掘就能看到这样的任务似乎很重要

TaskKey有一个秩参数,在描述后添加
ATask

要添加秩参数,您可能需要停止使用
taskKey
宏,并直接实例化
taskKey
类。所以这个(小写字母t):

变为(大写字母T):


可以找到列组的完整列表。

TaskKey有一个列组参数,请在描述后添加
ATask

要添加秩参数,您可能需要停止使用
taskKey
宏,并直接实例化
taskKey
类。所以这个(小写字母t):

变为(大写字母T):


可以找到一个完整的等级列表。

我尝试了这个,但对我无效。有什么需要记住的吗?非默认配置中的任务永远不会出现,这就是我所缺少的。谢谢很酷的提示,我从来没有注意到这个细节。我试过这个,但对我不起作用。有什么需要记住的吗?非默认配置中的任务永远不会出现,这就是我所缺少的。谢谢很酷的提示,我从来没有注意到这个细节。
lazy val foo = taskKey[Unit]("Bar.")
lazy val foo = TaskKey[Unit]("foo", "Bar.", KeyRanks.ATask)