使用本地Artifactory服务器

时间:2016-03-17 13:52:32

标签: scala intellij-idea sbt artifactory

我在具有互联网连接的计算机上安装了Intellij IDEA 15.0.4 + Scala插件(2.2.0),创建了一个新的SBT项目,并将所有外部依赖项添加到项目中:

i.stack.imgur.com/v560H.png

然而,当我尝试在我们的Artifactory服务器的issolated网络(没有互联网)中做同样的事情时,我收到以下消息:

  

错误:导入SBT项目时出错:
... ...

 
          http://zzz:8081/artifactory/scala_local/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar

            :::::::::::::::::::::::::::::::::::::::::::::: 

            ::          UNRESOLVED DEPENDENCIES         :: 

            :::::::::::::::::::::::::::::::::::::::::::::: 

            :: org.fusesource.jansi#jansi;1.11: not found 

            :::::::::::::::::::::::::::::::::::::::::::::: 

:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS unresolved dependency: org.fusesource.jansi#jansi;1.11: not found Error during sbt execution: Error retrieving required libraries (see C:\Users....sbt\boot\update.log for complete log) Error: Could not retrieve jansi 1.11


请参阅完整登录C:\ Users .... IdeaIC15 \ system \ LOG \ sbt.last.log

所以我认为我需要将jansi 1.11提升到Artifactory(到/org/fusesource/jansi/jansi/1.11/)。 在将jansi上传到Artifactory之后,我刷新了SBT并开始收到以下消息:

  

错误:导入SBT项目时出错:执行sbt期间出错:否   指定或检测到Scala版本

所以我猜它与Scifact在Artifactory中不可用的事实有关?如果这就是原因,那么手动将所有罐子上传到各自的路径似乎是不合理的,而且我无法在多次尝试中“猜测”这条道路......所以我很确定我在这里做错了什么。 ..

这是我的build.sbt:

  

name:=“untitled”

     

版本:=“1.0”

     

scalaVersion:=“2.10.4”

这是我的.sbt \ repositories:

[repositories] local  my-ivy-proxy-releases: http://zzz:8081/artifactory/scala_local/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext] my-maven-proxy-releases: http://zzz:8081/artifactory/scala_local/

(抱歉布局,不允许我发布超过2个链接...)

我在这里查了一些类似的问题,似乎没有任何帮助...

感谢您对我应该检查/阅读的内容的帮助... 有没有办法自动将所有依赖项部署到Artifactory中的正确路径?

***编辑: 好的,所以我删除了.sbt \ repositories文件,使IntelliJ缓存失效并重新启动,创建了一个新的SBT项目...... 这似乎也没有帮助 now it seems that it doesn't recognize the build.sbt syntax anymore... 即使我添加了解析器,它也完全忽略了它...... 我手动删除了/.sbt/boot/other/中的目录(有jansi和scala-sbt那里),现在它无法再次解析jansi,只是这次尝试连接到repo1.maven.org ... :

Error:Error while importing SBT project:<br/>...<br/><pre>          https://repo1.maven.org/maven2/org/fusesource/jansi/jansi/1.11/jansi-1.11.jar 

            :::::::::::::::::::::::::::::::::::::::::::::: 

            ::          UNRESOLVED DEPENDENCIES         :: 

            :::::::::::::::::::::::::::::::::::::::::::::: 

            :: org.fusesource.jansi#jansi;1.11: not found 

            :::::::::::::::::::::::::::::::::::::::::::::: 



:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS 
unresolved dependency: org.fusesource.jansi#jansi;1.11: not found 
Error during sbt execution: Error retrieving required libraries 
  (see C:\Users\...\.sbt\boot\update.log for complete log) 
Error: Could not retrieve jansi 1.11 
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=384M; support was removed in 8.0</pre><br/>See complete log in <a href="C:\Users\...\.IdeaIC15\system\log\sbt.last.log">C:\Users\...\.IdeaIC15\system\log\sbt.last.log</a>

谢谢, PA

2 个答案:

答案 0 :(得分:0)

我们遇到了类似的问题。

最终解决了问题的是删除.sbt \ repository文件。 然后可以使用默认存储库解决所有依赖关系。

答案 1 :(得分:0)

这是IDE的问题,您在其中特别使用了scala插件。您可以直接在build.sbt创建的文件夹中使用它。删除“项目”文件夹并打开cmd,在该文件夹上运行“ sbt”命令,将创建一个新的项目文件夹。现在,您可以在IDE中打开它。

也许您可能会首先在思想上发现一些问题,如果您一次构建项目,所有的问题都会消失。