【发布时间】:2016-08-16 19:25:38
【问题描述】:
我正在尝试使用 sbt(scala 版本 - 2.11.8,sbt 版本 - 0.13.11,OS - MAC)构建一个 scala 项目。我收到以下工件的未解决依赖项错误。我尝试在公司网络内部和网络外部运行。我的同事能够毫无问题地构建相同的项目。
co.blocke#gitflow-packager;0.1.3:未找到 com.eed3si9n#sbt-buildinfo;0.5.0:未找到
这是我在执行“sbt compile”时得到的错误的完整跟踪
[info] Resolving co.blocke#gitflow-packager;0.1.3 ...
[error] Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repo.typesafe.com/typesafe/ivy-releases/co.blocke/gitflow-packager/scala_2.10/sbt_0.13/0.1.3/ivys/ivy.xml
[error] Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/co.blocke/gitflow-packager/scala_2.10/sbt_0.13/0.1.3/ivys/ivy.xml
[error] Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repo1.maven.org/maven2/co/blocke/gitflow-packager_2.10_0.13/0.1.3/gitflow-packager-0.1.3.pom
[error] Server access Error: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target url=https://repository.jboss.org/nexus/content/repositories/co/blocke/gitflow-packager_2.10_0.13/0.1.3/gitflow-packager-0.1.3.pom
[warn] module not found: co.blocke#gitflow-packager;0.1.3
看起来有两个问题发生了。
- 连接到上述存储库时遇到证书问题
- 即使设置了标志 useJCenter := true,它也没有连接到 bintray/jcenter(这是在 jcenter 中查找 sbt 版本 0.13.11 的依赖项所必需的标志)。
BuildSettings.scala
lazy val basicSettings = scalariformSettings ++ Seq(
organization := "com.abc",
description := "Microservice core infrastructure",
startYear := Some(2015),
scalaVersion := Scala,
parallelExecution in Test := false,
useJCenter := true,
// externalResolvers := Resolver.withDefaultResolvers(resolvers.value, mavenCentral = false),
ScalariformKeys.preferences := ScalariformKeys.preferences.value
.setPreference(AlignArguments, true)
.setPreference(AlignParameters, true)
.setPreference(AlignSingleLineCaseStatements, true)
.setPreference(DoubleIndentClassDeclaration, true)
.setPreference(PreserveDanglingCloseParenthesis, true),
// resolvers ++= Dependencies.resolutionRepos,
scalacOptions := Seq("-feature", "-deprecation", "-encoding", "UTF8", "-unchecked"),
testOptions in Test += Tests.Argument("-oDF")
// DON'T set a version! gitflow-packager plugin does this for us based on git-flow branch
)
}
更新: 更新 java 证书后,证书问题似乎已解决。这解决了以下的依赖问题
com.eed3si9n#sbt-buildinfo;0.5.0:
但是,co.blocke#gitflow-packager;0.1.3: 的依赖问题仍然存在。我可以在http://dl.bintray.com/blocke/releases/co.blocke/gitflow-packager/scala_2.10/sbt_0.13/0.1.3/jars/ 中看到依赖关系,但 sbt 编译仍然没有在寻找 jcenter。
这里是更新的日志。
[info] Resolving co.blocke#gitflow-packager;0.1.3 ...
[warn] module not found: co.blocke#gitflow-packager;0.1.3
[warn] ==== typesafe-ivy-releases: tried
[warn] https://repo.typesafe.com/typesafe/ivy-releases/co.blocke/gitflow-packager/scala_2.10/sbt_0.13/0.1.3/ivys/ivy.xml
[warn] ==== sbt-plugin-releases: tried
[warn] https://repo.scala-sbt.org/scalasbt/sbt-plugin-releases/co.blocke/gitflow-packager/scala_2.10/sbt_0.13/0.1.3/ivys/ivy.xml
[warn] ==== local: tried
[warn] /Users/abc123/.ivy2/local/co.blocke/gitflow-packager/scala_2.10/sbt_0.13/0.1.3/ivys/ivy.xml
[warn] ==== public: tried
[warn] https://repo1.maven.org/maven2/co/blocke/gitflow-packager_2.10_0.13/0.1.3/gitflow-packager-0.1.3.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: co.blocke#gitflow-packager;0.1.3: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
【问题讨论】:
-
你能给出你的sbt文件的相关部分吗?
-
您的电脑上可能缺少某些授权文件?前段时间我遇到了同样的问题,缺少私有 maven/ivy 的凭据
-
我添加了我正在使用的构建设置。
-
@pedrorijo91,我在哪里检查这些凭据?
-
证书问题已解决,但仍找不到 jcenter 中的依赖项之一。你能帮我解决这个问题吗?