2014-07-19 3 views
1

나는 1 플러그인 3 종속성을 사용하십시오 SBT 빌드 파일이 있습니다sbt가 선언 된 종속성에 잘못된 버전 번호를 사용하는 이유는 무엇입니까?

[warn] :: org.scala-lang#scala-compiler;2.10.4-SNAPSHOT: not found 
[warn] :: org.scala-lang#scala-library;2.10.4-SNAPSHOT: not found 
[warn] :: org.scala-lang#scala-reflect;2.10.4-SNAPSHOT: not found 

이 버그로 보인다 : 컴파일러가 IScala - 매크로를 컴파일 나에게 다음과 같은 오류를 준 그러나

scalaVersion := "2.10.4" 

val reflect = Def.setting { "org.scala-lang" % "scala-reflect" % "2.10.4" } 

val compiler = Def.setting { "org.scala-lang" % "scala-compiler" % "2.10.4" } 

lazy val macrosSettings = Project.defaultSettings ++ Seq(
addCompilerPlugin("org.scala-lang.plugins" % "macro-paradise_2.10.4-SNAPSHOT" % "2.0.0-SNAPSHOT"), 
libraryDependencies ++= { 
    import Dependencies._ 
    Seq(play_json, specs2, reflect.value) 
} 
) 

lazy val Macros = Project(id="IScala-Macros", base=file("macros"), settings=macrosSettings) 

나는 그들이 2.10.4-SNAPSHOT으로 해결하기를 원하지 않지만 2.10.4만이 sbt의 버그입니까? 그렇지 않다면이 SNAPSHOT은 어디에서 왔습니까?

답변

1

그래서 내가보기 엔 당신이 the link to a project을 찾을 수있는 문서 Macro Paradise을 읽어 보시기 바랍니다 엔드 - 투 - 엔드 예를 들어 하지만 매크로 낙원 작업 한마디에 그와 같은 쉬운이 build.sbt 빌드 정의의 문제가 몇 있습니다 (매크로를 사용하도록 SBT를 이미 설정했다면) 빌드에 다음 두 줄을 추가하십시오.

이 빌드의 문제에 관해서는, 나는 depdendencies reflectcompiler에 대한 Def.setting에 대한 이유가 표시되지 않으며, 또한 나는 addCompilerPlugin의 종속성에 대해 확실 해요. 아래의 값을 사용하십시오. Def.settingscalaVersion 설정 값을 나타냅니다. 나는 여전히 addCompilerPlugin가 위의 샘플 프로젝트를 따라야한다고 생각합니다.

import Dependencies._ 

scalaVersion := "2.10.4" 

val reflect = Def.setting { 
    "org.scala-lang" % "scala-reflect" % scalaVersion.value 
} 

val compiler = Def.setting { 
    "org.scala-lang" % "scala-compiler" % scalaVersion.value 
} 

lazy val macrosSettings = Project.defaultSettings ++ Seq(
    addCompilerPlugin("org.scala-lang.plugins" % "macro-paradise_2.10.4-SNAPSHOT" % "2.0.0-SNAPSHOT"), 
    libraryDependencies ++= Seq(
    play_json, 
    specs2, 
    reflect.value 
) 
) 

lazy val Macros = Project(id="IScala-Macros", base=file("macros"), settings=macrosSettings) 
+0

원래 빌드 파일은 매우 길고 복잡한 미안하다 :이에서 수정 이 https://github.com/mattpap/IScala/blob/master/project/Build.scala 은 즉 내가로부터 scalaVersion 변경 2.10.2 to 2.10.4 – tribbloid

+0

전체 파일을 보여주기 위해 새로운 git 프로젝트를 포크로 만들자 – tribbloid

+0

OK 새 브랜치를 만들었습니다 : https://github.com/tribbloid/IScala/blob/master/project/ Build.scala – tribbloid

관련 문제