你能在MacOS Catalina上安装sbt 0.12.4、scala 2.10.6和java 7吗



我们有一个遗留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,但没有成功,几天后我已经用尽了所有选择。

  1. 我曾尝试使用sbt-launch.jar按照官方手册安装说明进行安装,但在安装过程中,许多依赖项不再可用。

  2. 我试过使用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/中,作为一种变通方法,看看我是否可以得到更多。

  1. 我已经从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,所有的依赖关系都被成功地解决了。

最新更新