加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – sbt找不到Resolver.file()定义的本地存储库

发布时间:2020-12-16 18:47:09 所属栏目:安全 来源:网络整理
导读:我用 name := "sbt-publish-test"version := "0.1-SNAPSHOT"publishTo := Some(Resolver.file("sbt-repo",file("/home/pishen/sbt-repo"))) 和sbt发布将我的项目发布到目录中. 现在在另一个项目中,我想解决刚刚发布的项目.我用 resolvers += "my-repo" at "f
我用

name := "sbt-publish-test"

version := "0.1-SNAPSHOT"

publishTo := Some(Resolver.file("sbt-repo",file("/home/pishen/sbt-repo")))

和sbt发布将我的项目发布到目录中.

现在在另一个项目中,我想解决刚刚发布的项目.我用

resolvers += "my-repo" at "file:///home/pishen/sbt-repo"

libraryDependencies += "default" %% "sbt-publish-test" % "0.1-SNAPSHOT"

并且能够毫无错误地解决项目. show resolvers的结果是:

> show resolvers 
[info] List(my-repo: file:///home/pishen/sbt-repo)

但是,当我使用时

resolvers += Resolver.file("my-repo",file("/home/pishen/sbt-repo"))

libraryDependencies += "default" %% "sbt-publish-test" % "0.1-SNAPSHOT"

show resolvers的结果变为:

> show resolvers
[info] List(FileRepository(my-repo,FileConfiguration(true,None),Patterns(ivyPatterns=List(),artifactPatterns=List(/home/pishen/sbt-repo/[organisation]/[module](_[scalaVersion])(_[sbtVersion])/[revision]/[artifact]-[revision](-[classifier]).[ext]),isMavenCompatible=true,descriptorOptional=false,skipConsistencyCheck=false)))

并且sbt说当我输入sbt update时它无法解决依赖关系:

[warn]  module not found: default#sbt-publish-test_2.10;0.1-SNAPSHOT
[warn] ==== local: tried
[warn]   /home/pishen/.ivy2/local/default/sbt-publish-test_2.10/0.1-SNAPSHOT/ivys/ivy.xml
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/default/sbt-publish-test_2.10/0.1-SNAPSHOT/sbt-publish-test_2.10-0.1-SNAPSHOT.pom
[warn] ==== my-repo: tried
[info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: default#sbt-publish-test_2.10;0.1-SNAPSHOT: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::

这是一个错误吗?或者我以错误的方式使用Resolver.file()? “url”中的“name”和Resolver.file()之间有什么区别?我正在使用sbt 0.13.7.

解决方法

我怀疑当你在该上下文中使用Resolver.file时,它更多地是一个“构建器”创建者,期望后续的方法调用在“uri”中使用“name”时填写具有不同默认值的其他配置信息句法.

sbt ScalaDoc for Resolver.file.apply暗示了这些方面:

Constructs a file resolver with the given name. The patterns to use must be explicitly specified using the ivys or artifacts methods on the constructed resolver object.

当我做了类似于你正在做的事情时,我从一个文件开始,并使用它的API将其转换为URI形式:

resolvers += "my-repo" at file("/home/pishen/sbt-repo").toURI.toASCIIString

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读