我们有一个遗留Scala项目,我们需要对其进行更改并在MacOS Catalina上编译。其概要配置为:
scalaVersion := "2.10.6"
sbt.version=0.12.4
Java 7
在这个阶段,我们没有资源将项目升级到更新的版本。
我安装了Java 7。
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
我一直试图在MacOS Catalina上安装sbt 0.12.4,但没有成功,几天后我已经用尽了所有选择。
我曾尝试使用
sbt-launch.jar
按照官方手册安装说明进行安装,但在安装过程中,许多依赖项不再可用。我试过使用sbt临时脚本,但当运行它时,我得到:
Getting net.java.dev.jna jna 3.2.3 ...
:: problems summary ::
:::: WARNINGS
module not found: net.java.dev.jna#jna;3.2.3
==== local: tried
/Users/theuser/.ivy2/local/net.java.dev.jna/jna/3.2.3/ivys/ivy.xml
==== typesafe-ivy-releases: tried
http://repo.typesafe.com/typesafe/ivy-releases/net.java.dev.jna/jna/3.2.3/ivys/ivy.xml
==== Maven Central: tried
http://repo1.maven.org/maven2/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
==== sonatype-snapshots: tried
https://oss.sonatype.org/content/repositories/snapshots/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
::::::::::::::::::::::::::::::::::::::::::::::
:: UNRESOLVED DEPENDENCIES ::
::::::::::::::::::::::::::::::::::::::::::::::
:: net.java.dev.jna#jna;3.2.3: not found
::::::::::::::::::::::::::::::::::::::::::::::
:::: ERRORS
Server access Error: Connection refused url=http://repo.typesafe.com/typesafe/ivy-releases/net.java.dev.jna/jna/3.2.3/ivys/ivy.xml
SERVER ERROR: HTTPS Required url=http://repo1.maven.org/maven2/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
Server access Error: Connection reset url=https://oss.sonatype.org/content/repositories/snapshots/net/java/dev/jna/jna/3.2.3/jna-3.2.3.pom
:: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
unresolved dependency: net.java.dev.jna#jna;3.2.3: not found
Error during sbt execution: Error retrieving required libraries
(see /Users/theuser/.sbt/0.12.4/boot/update.log for complete log)
Error: Could not retrieve jna 3.2.3
我们之前已经通过手动查找依赖项编译了自己的依赖项缓存(其中一些已经过时(,然后在编译之前将其放入~/.ivy2/cache
中。在这种情况下,我找不到jna3.2.3
来将其包含在/Users/theuser/.ivy2/local/net.java.dev.jna/jna/3.2.3/
中,作为一种变通方法,看看我是否可以得到更多。
- 我已经从sbt和遗留项目当前工作的另一台Mac上复制了
sbt 0.12.4
配置、文件夹和常春藤缓存。不起作用
如有任何帮助或线索,我们将不胜感激。
我的问题是根据@kmh在评论中的建议和中的答案解决的https://stackoverflow.com/a/29303664/.谢谢
- 使用
brew install sbt@0.13
安装sbt 0.13。它安装Java 8(openjdk@8)作为依赖 - 在项目的根目录中添加了
.sbtopts
,并将其指向Java 7的安装位置:
-java-home
/usr
然后我运行了sbt
,所有的依赖关系都被成功地解决了。