SBT 在 Sources 中查找子类型

Posted

技术标签:

【中文标题】SBT 在 Sources 中查找子类型【英文标题】:SBT finding subtype in Sources 【发布时间】:2017-07-24 21:45:57 【问题描述】:

有没有办法在源代码中找到扩展 sbt 中某个类的类/对象?

我玩过https://github.com/ruippeixotog/sbt-classfinder,但这似乎只对CompileTest 有用。

我打算做的是:

    找到extends StyleSheet.Standalone 的所有类(来自 https://github.com/japgolly/scalacss/) “编译”(*) (object.render[TypedTag[String]] 他们并将输出放在特定文件夹中

(*) 其实我想对它们中的每一个调用 render 方法并将输出(一个字符串)放入一个x.css 文件中。

【问题讨论】:

我以前从未听说过这样的插件。我怀疑一个存在。开发一个任务来做到这一点似乎不是一个非常繁重的编码练习。 sbt 在这种方式下非常灵活。 你能否提供一些帮助,然后如何进行反思 Doh,这正是我最害怕的(这就是为什么我没有回答你的问题,只是留下评论:))我认为***.com/q/31907235/1305344 或***.com/q/12078366/1305344 可以提供帮助。如果是这样,请将您的问题标记为重复。 你能澄清一下sbt-classfinder 没有提供的你需要什么吗?我认为该项目完全符合您在 cmets 中讨论的“反射”风格搜索。 @Rich 我认为它应该做我想做的事,但我无法让它正常工作。我可以提供我尝试过的,但这是我尝试过的非常标准的(设置宇宙等)但我无法让它工作:( 【参考方案1】:

我相信sbt-classfinder 完全符合您的要求。如果您想从这个问题中获得更多信息,则需要更具体地说明它为什么不适合您,或者您想要它没有提供什么。

你说:

我想在每个 [扩展StyleSheet.Standalone] 的类上调用 render 方法并将输出(字符串)放入 x.css 文件中。

first example in the sbt-classfinder README 展示了如何找到一个“标有 QuickRun 注释”的类并执行它,这与该类非常接近,应该可以帮助您入门..

【讨论】:

以上是关于SBT 在 Sources 中查找子类型的主要内容,如果未能解决你的问题,请参考以下文章

将RPM发布到nexus 3

docker中ubuntu部署 sbt

Build shadowsocksr-android with sbt

Build shadowsocksr-android with sbt

未找到模块:org.scala-sbt#sbt;1.1.6

多个子节点收集日志-主节点上传到HDFS