2017-11-30 18 views
-1

SBT 0.13.6 버전을 내 우분투 우분투에 설치하려고합니다. 나는 SBT 버전을 확인할 때, 그것은 버전 1.0.3를 보여줍니다 설치 한 후SBT는 기본적으로 0.13.6 이상의 버전 1.0.3을 설치합니다.

wget http://dl.bintray.com/sbt/debian/sbt-0.13.6.deb 
sudo dpkg -i sbt-0.13.6.deb 
sudo apt-get update 
sudo apt-get install sbt 

:이를 위해 나는 다음 단계를 수행하십시오. 여기

는 명령입니다 :

[email protected]:~$ sbt about 
Getting org.scala-sbt sbt 1.0.3 ... 
:: retrieving :: org.scala-sbt#boot-app 
    confs: [default] 
    69 artifacts copied, 0 already retrieved (22027kB/913ms) 
Getting Scala 2.12.4 (for sbt)... 
:: retrieving :: org.scala-sbt#boot-scala 
    confs: [default] 
    5 artifacts copied, 0 already retrieved (18986kB/225ms) 
[info] Loading project definition from /home/hadoop/project 
[info] Set current project to hadoop (in build file:/home/hadoop/) 
[info] This is sbt 1.0.3 
[info] The current project is {file:/home/hadoop/}hadoop 0.1-SNAPSHOT 
[info] The current project is built against Scala 2.12.4 
[info] Available Plugins: sbt.plugins.IvyPlugin, sbt.plugins.JvmPlugin, sbt.plugins.CorePlugin, sbt.plugins.JUnitXmlReportPlugin, sbt.plugins.Giter8TemplatePlugin 
[info] sbt, sbt plugins, and build definitions are using Scala 2.12.4 

그리고 내 스칼라 버전 2.12.4 아니다; 그것은 2.11.8입니다. 왜 잘못된 버전을 보여?

[email protected]:~$ scala -version 
Scala code runner version 2.11.8 -- Copyright 2002-2016, LAMP/EPFL 

실수를 했습니까?

답변

7

SBT - 실행시 SBT의 프로젝트 별 버전을 다운로드합니다 - 중 버전 당신이 설치되어 있습니다. 그러한 버전이 지정되지 않으면 설치된 버전이 사용됩니다.

sbt.version=0.13.6 
: 특정 프로젝트가 SBT 0.13.6를 사용하려는 경우, 당신은 다음과 같은 내용으로 (이 특정한 경우에 /home/hadoop/project/build.properties을하게 될 프로젝트의 루트 디렉토리를 기준으로) ./project/build.properties라는 파일을 생성

SBT은 해당 버전을 다운로드하여 프로젝트를 빌드하는 데 사용합니다.

따라서 최신 버전의 SBT을 컴퓨터에 설치하는 것이 좋습니다. 그러면 이후의 문제가 간단해질 수 있습니다.

BTW, 난 당신이 특정 SBT 버전을 설치 dpkg을 사용하는 것을 알 수 있지만, 다음 apt-get install sbt 사용 - 가능성이 버전에 대한 최신 SBT 릴리스 (나는 1.0.3 릴리스 같은데요)를 설치 한 것이다 우분투 인 경우 dpkg을 통해 설치된 버전을 대체합니다. 그 명령의 결과는 무엇입니까? 또는 /home/hadoop/project/build.properties 파일 (있는 경우) - 은 SBT 버전 1.0.3을 지정할 수 있습니다.

고려해야 할 또 다른 사항 : sbt 명령은 프로젝트 디렉토리 (프로젝트 소스 만 포함 된 디렉토리)에서 실행해야합니다. , ./target 등과 같이 일부 출력 폴더가 남기 때문에 HOME 폴더에서 sbt을 실행하는 것은 좋지 않습니다.)

스칼라 소스, SBT를 컴파일 당신의 SBT 빌드 파일에 지정된 버전 (또는 속성) 정의되지 않은 경우 사용되는 SBT 버전을 빌드하는 데 사용되는 버전을 사용합니다 - 그것은 않습니다 이 아닌은 컴퓨터에 설치되어있는 Scala의 설치된 버전을 사용하십시오. 당신이 스칼라 2.11.8을 사용하려면

, 다음 SBT 빌드 파일에 다음 줄을 추가합니다 :

scalaVersion := "2.11.8" 

난 강력하게 당신의 웹 사이트에 SBT documentation을 검토하는 것이 좋습니다.