使用本地 Artifactory 服务器配置 Intellij IDEA 15.0.4 和 SBT 0.13.7



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

i.stack.imgur.com/v560H.png

但是,当我尝试在我们的隔离网络(没有互联网)中对我们的Artifactory服务器执行相同的操作时,我收到以下消息:

错误:导入 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 
            :::::::::::::::::::::::::::::::::::::::::::::: 

:: 使用详细或调试消息级别了解更多详细信息 未解决 依赖关系:org.fusesource.jansi#jansi;1.11:未找到 期间出错 sbt 执行:检索所需库时出错(请参阅 C:\用户....sbt\boot\update.log 用于完整日志) 错误:无法 检索 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 版本

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

这是我的build.sbt:

名称 := "无标题"

版本 := "1.0"

scala版本 := "2.10.4"

这是我的.sbt\存储库:

[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\存储库文件,使 IntelliJ 缓存无效并重新启动,创建了一个新的 SBT 项目......这似乎也无济于事现在看来它不再识别 build.sbt 语法了......即使我添加了解析器,它也完全忽略了它......我手动删除了/.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....sbtbootupdate.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....IdeaIC15systemlogsbt.last.log">C:Users....IdeaIC15systemlogsbt.last.log</a>

谢谢PA

我们遇到了类似的问题。

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

这是您正在使用的 IDE 的问题,特别是其中的 scala 插件。您可以轻松使用它,只需转到创建build.sbt的文件夹即可。删除"项目"文件夹并打开cmd,在该文件夹上运行"sbt"命令,将创建一个新的项目文件夹。现在,您可以在 IDE 中打开它。

可能是你一开始在IDE中发现一些问题,如果你构建一次项目,所有的问题都会消失。

最新更新