当前位置: 首页 > 知识库问答 >
问题:

sbt publish-local后如何引用jar文件

祁通
2023-03-14
sbt publish-local

[info]将spark-core2.10发布到C:\users\s80035683.m2\repository\org\apache\spark-core2.10\1.1.0-Snapshot\spark-core2.10\1.1.0-Snapshot-javadoc.jar[info]将spark-core2.10发布到C:\users\s80035683.ivy2\local\org.apache.spark\poms\spark-core2.10\1.1.0-Snapshot\poms\spark-core2.10.pom[info]将spark-core2.10发布到

特别是:这里有一个.m2:

C:\Users\s80035683\.m2\repository\org\apache\spark\spark-core_2.10\1.1.0-SNAPSHOT>dir

 Directory of C:\Users\s80035683\.m2\repository\org\apache\spark\spark-core_2.10\1.1.0-SNAPSHOT

06/26/2014  04:25 PM    <DIR>          .
06/26/2014  04:25 PM    <DIR>          ..
06/26/2014  04:25 PM         1,180,476 spark-core_2.10-1.1.0-SNAPSHOT-javadoc.jar
06/26/2014  04:24 PM           808,815 spark-core_2.10-1.1.0-SNAPSHOT-sources.jar
06/26/2014  02:27 PM         5,781,917 spark-core_2.10-1.1.0-SNAPSHOT.jar
06/26/2014  05:03 PM            13,436 spark-core_2.10-1.1.0-SNAPSHOT.pom

当尝试使用客户端项目中的JAR时,问题就出现了。

以下是客户端build.sbt的节选:

val sparkVersion = "1.1.0-SNAPSHOT"
..
libraryDependencies ++= Seq(
  "org.apache.spark" % "spark-core_2.10" % sparkVersion  % "compile->default"  withSources(),
  "org.apache.spark" % "spark-sql_2.10" % sparkVersion  % "compile->default"  withSources()

..

resolvers  ++= Seq(
  "Apache repo" at "https://repository.apache.org/content/repositories/releases",
  "Local Repo" at Path.userHome.asFile.toURI.toURL + "/.m2/repository",
  Resolver.mavenLocal
)

所以:我们有:

    null
sbt package
[info] Loading project definition from C:\apps\hspark\project
[info] Set current project to hspark (in build file:/C:/apps/hspark/)
[info] Updating {file:/C:/apps/hspark/}hspark...
[info] Resolving org.scala-lang#scala-library;2.10.4 ...
  [info] Resolving org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT ...
  [info] Resolving org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT ...
  [info] Resolving org.scala-lang#scala-compiler;2.10.4 ...
  [info] Resolving org.scala-lang#scala-reflect;2.10.4 ...
  [info] Resolving org.scala-lang#jline;2.10.4 ...
  [info] Resolving org.fusesource.jansi#jansi;1.4 ...
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHOT compile
[warn]  :: org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHOT compile
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
sbt.ResolveException: unresolved dependency: org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHOT compile
unresolved dependency: org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHOT compile
        at sbt.IvyActions$.sbt$IvyActions$$resolve(IvyActions.scala:217)
        at sbt.IvyActions$$anonfun$update$1.apply(IvyActions.scala:126)
..
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:744)
[error] (*:update) sbt.ResolveException: unresolved dependency: org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHOT compile
[error] unresolved dependency: org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-sql_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHOT compile

[
[error] (*:update) sbt.ResolveException: unresolved dependency: org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: configuration not found in org.apache.spark#spark-core_2.10;1.1.0-SNAPSHOT: 'default'. It was required from default#hspark_2.10;0.1.0-SNAPSHO

(使用依赖关系图插件):

完成更新。[info]默认值:hspark2.10:0.1.0-snapshot[S][info]
+-org.apache.spark:spark-core2.10:1.1.0-snapshot[S]

共有1个答案

邹胜泫
2023-03-14

尝试删除依赖项的映射compile->default。无论如何,它是多余的,正如文档所说:

没有映射的配置(没有“->”)被映射到“default”或“compile”。仅当映射到与这些配置不同的配置时才需要->。

因此,按照以下方式声明依赖项:

libraryDependencies ++= Seq(
  "org.apache.spark" % "spark-core_2.10" % sparkVersion withSources(),
  "org.apache.spark" % "spark-sql_2.10" % sparkVersion  withSources()
)
 类似资料:
  • 本文向大家介绍如何引入scss?引入后如何使用?相关面试题,主要包含被问及如何引入scss?引入后如何使用?时的应答技巧和注意事项,需要的朋友参考一下 安装scss依赖包: 在build文件夹下修改 webpack.base.conf.js 文件: 在 module 下的 rules 里添加配置,如下: 应用: 在vue文件中应用scss时,需要在style样式标签上添加lang="scss",即

  • 问题内容: 使用Maven项目和Jar文件时,在引用资源时遇到麻烦的问题… 我将所有资源都放在一个专用文件夹/ src / main / resources中,该文件夹是Eclipse中构建路径的一部分。使用以下文件引用文件 这在Eclipse中工作正常,但在Jar文件中失败-资源位于jar根目录正下方的文件夹中… 有谁知道在JAR和Eclipse中同时引用文件的“最佳实践”? 编辑: 问题是,尽

  • 问题内容: 我在引用jar文件中的简单图像时遇到了麻烦。 我有一个包tha包含Java文件我有一个包tha包含图像 在我的java文件中,我引用了这样的图像 但是无法找到该图像。在首播中看起来像这样 前导“ /”和分隔符在Windows中不正确。 我检查了此路径,它在MS Explorer中不起作用。 更新 好的,它在某种程度上可以正常工作,但是图像路径不正确,不是对文件的引用,前导斜杠和%20空

  • 我只是试图在我的maven项目中引用hadoop mapreduce jar。我在http://mvnrepository.com/artifact/org.apache.hadoop/hadoop-Mapreduce/2.3.0网站上看到了这样做的方法。 null 如何在Maven中引用hadoop V2.3.0 jar? 当我键入以下命令时 任何帮助都很感激。

  • 问题内容: 我是Java的新手(基本上是LAMP开发人员)。我得到了这个JAVA API来解析文件并显示所有收件箱消息。 我尝试执行给定的文件,但会引发异常。我需要添加/引用API提供的一些文件。 我还没有Java的IDE。维基怎么说 当您的Java项目要求JAR库起作用时,您必须配置项目以在其构建路径中包括这些库。幸运的是,Eclipse使此过程变得简单易记。这里使用的构建是Eclipse Ja

  • 问题内容: 我有两个架构文件,一个是从另一个导入的。在Eclipse模式中执行代码时找到了,但是从jar模式文件中执行代码时找不到了 这是代码 这是我得到的错误 谢谢 问题答案: 如果是import ,则只需定义如下所示的架构工厂就足够了。该api足够聪明,可以加载导入/包含的架构。 我验证了它在1.5和1.6上都能正常工作。在1.6上,如果使用DOM ,也可能会遇到此问题。