如何将projectID:ModuleID(用于项目)转换为UpdateReport中的ModuleID

时间:2015-11-28 23:15:35

标签: sbt

如果有projectID请求Project,则会返回没有(至少)scala交叉版本。即toString中出现的位看起来像org.ensime:util:0.9.10-SNAPSHOT

我需要的是此ModuleID的确切Project,例如它出现在UpdateReport中,通常看起来像org.ensime:util_2.11:0.9.10-SNAPSHOT

任何人都知道如何做到这一点,而不仅仅是攻击String s?

此外,在UpdateReport中,我能够构建Map[(ModuleID, Configuration), Seq[ModuleID]],但我确实需要Map[(ModuleID, Configuration), Seq[(ModuleID, Configuration)]](即包含依赖的配置,而不仅仅是dependee' s。

我已经可以听到风滚草了

1 个答案:

答案 0 :(得分:1)

约翰内斯·鲁道夫指出,在https://github.com/jrudolph/sbt-dependency-graph/blob/master/src/main/scala/net/virtualvoid/sbt/graph/DependencyGraphSettings.scala#L44他们构建ModuleID就像这样:

CrossVersion(scalaVersion.gimme, scalaBinaryVersion.gimme)(projectID.gimme)

这会构建正确的toString,但它不会equals UpdateReport中的Configuration版本。

另外,我仍然不知道如何获得目标的echo "Please enter new DNS Information" set /p add_dns=Enter your DNS netsh interface ipv4 add dnsservers "LAN" %add_dns% pause