首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Ammonite中导入$ivy

在Ammonite中导入$ivy
EN

Stack Overflow用户
提问于 2018-11-06 19:24:09
回答 2查看 2.8K关注 0票数 2

我需要在一个Ammonite脚本中导入sikulixapi。我可以这样做。

因此,如果我从Ammonite的交互式控制台执行此操作:

代码语言:javascript
复制
@ import $ivy.`com.sikulix:sikulixapi:1.1.0` 
https://repo1.maven.org/maven2/com/sikulix/sikulixapi/1.1.0/sikulixapi-1.1.0.pom
  100,0% [##########] 5,3 KiB (37,6 KiB / s)
https://repo1.maven.org/maven2/com/nativelibs4java/bridj/0.6.2/bridj-0.6.2.pom
  100,0% [##########] 18,1 KiB (226,0 KiB / s)
https://repo1.maven.org/maven2/com/sikulix/sikulixlibslux/1.1.0/sikulixlibslux-1.1.0.pom
  100,0% [##########] 2,6 KiB (20,8 KiB / s)
https://repo1.maven.org/maven2/org/swinglabs/swing-layout/1.0.3/swing-layout-1.0.3.pom
  100,0% [##########] 858 B (6,5 KiB / s)
https://repo1.maven.org/maven2/com/nativelibs4java/nativelibs4java-parent/1.8/nativelibs4j…
  100,0% [##########] 16,8 KiB (204,3 KiB / s)
Failed to resolve ivy dependencies:
  jxgrabkey:jxgrabkey:1.0 
    not found: /home/jenkins/.ivy2/local/jxgrabkey/jxgrabkey/1.0/ivys/ivy.xml
    not found: https://repo1.maven.org/maven2/jxgrabkey/jxgrabkey/1.0/jxgrabkey-1.0.pom

但是jxgrabkey确实存在于Maven中。

这也会失败:

代码语言:javascript
复制
@ import $ivy.`jxgrabkey:jxgrabkey:1.0` 
Failed to resolve ivy dependencies:abkey/jxgrabkey/1.0/jxgrabkey-1.0.pom.sha1

我没有使用任何HTTP代理。

其他版本的sikulixapi还有其他问题:

代码语言:javascript
复制
@ import $ivy.`com.sikulix:sikulixapi:1.1.2` 
Failed to resolve ivy dependencies:
  com.sikulix:sikulix2tigervnc:2.0.0-SNAPSHOT 
    not found: /home/jenkins/.ivy2/local/com.sikulix/sikulix2tigervnc/2.0.0-SNAPSHOT/ivys/ivy.xml
    not found: https://repo1.maven.org/maven2/com/sikulix/sikulix2tigervnc/2.0.0-SNAPSHOT/sikulix2tigervnc-2.0.0-SNAPSHOT.pom
  com.github.vidstige:jadb:-v1.0-g94ebf38-23 
    not found: /home/jenkins/.ivy2/local/com.github.vidstige/jadb/-v1.0-g94ebf38-23/ivys/ivy.xml
    not found: https://repo1.maven.org/maven2/com/github/vidstige/jadb/-v1.0-g94ebf38-23/jadb--v1.0-g94ebf38-23.pom

@ import $ivy.`com.sikulix:sikulixapi:1.1.1` 
https://repo1.maven.org/maven2/com/sikulix/sikulixapi/1.1.1/sikulixapi-1.1.1.pom
100,0% [##########] 6,6 KiB (46,5 KiB / s)
https://repo1.maven.org/maven2/com/melloware/jintellitype/1.3.9/jintellitype-1.3.9.pom
100,0% [##########] 9,9 KiB (216,3 KiB / s)
Failed to resolve ivy dependencies:
  com.github.vidstige:jadb:-v1.0-g94ebf38-23 
    not found: /home/jenkins/.ivy2/local/com.github.vidstige/jadb/-v1.0-g94ebf38-23/ivys/ivy.xml
    not found: https://repo1.maven.org/maven2/com/github/vidstige/jadb/-v1.0-g94ebf38-23/jadb--v1.0-g94ebf38-23.pom

已尝试使用Ammonite 1.2.1、1.3.3和1.4.0。

EN

回答 2

Stack Overflow用户

发布于 2018-11-06 19:54:58

jxgrabkey:jxgrabkey:1.0存在于Maven存储库上,但根据your mvnrepository link,它不在Maven Central上,而在http://labs.consol.de/maven/repository上(请参阅POM和JAR链接的目标)。

因此,必须将额外的存储库添加到Ammonite会话中,例如

代码语言:javascript
复制
@ interp.repositories() ++= Seq(coursier.MavenRepository("https://labs.consol.de/maven/repository"))

@ import $ivy.`com.sikulix:sikulixapi:1.1.0`

然后就可以很好地添加依赖项了。

请注意,我将协议更改为https (http重定向到https,但coursier不支持协议更改重定向,coursier是在Ammonite中加载依赖项的库)。

票数 6
EN

Stack Overflow用户

发布于 2018-11-06 22:13:00

a3var答案是正确的。遵循同样的技术,我已经成功地导入了sikulixapi 1.1.1:

代码语言:javascript
复制
interp.repositories() ++= Seq(coursier.MavenRepository("https://jitpack.io"))
import $ivy.`com.sikulix:sikulixapi:1.1.1`
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53170922

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档