2012-05-24 20 views
11

Jak używać Scala 2.10Mx z grą 2.x.x?scala 2.10Mx z Playframework 2

Próbowałem dodać scalaVersion: = "2.10.0-M3" do projektu/Build.scala, ale nie przyniosło to żadnego efektu.

Oto mój projekt/Build.scala:

import sbt._ 
import Keys._ 
import PlayProject._ 

object ApplicationBuild extends Build { 

    val appName   = "dashboard-server" 
    val appVersion  = "1.0-SNAPSHOT" 

    resolvers += "Local Ivy Repository" at "file://"+Path.userHome.absolutePath+"/.ivy2/cache" 

    scalaVersion := "2.10.0-M3" 

    val appDependencies = Seq(
     "mysql" % "mysql-connector-java" % "5.1.10" 
    ) 

    val main = PlayProject(appName, appVersion, appDependencies, mainLang = SCALA).settings(
     // Add your own project settings here 

    ) 

} 

Używam SBT 0.11.3

+0

W zasadzie powinno to działać, jeśli jest umieszczone we właściwym miejscu. Proszę pokazać pełne 'Build.scala'. Przy okazji, potrzebujesz SBT 0.11.3, aby użyć Scala 2.10. –

+3

Dopóki Play nie ma wersji opartej na Scali 2.10.x, nie można używać Play + Scala 2.10.x razem. Scala 2.9.x i 2.10.x nie są kompatybilne z binarnymi. – jsuereth

+1

Dwóch guru Scali z różnymi opiniami ... kto ma rację? – Edmondo1984

Odpowiedz

2

Odtwarzanie 2.0.x nie działa z Scala 2.10. Odgrywa gałąź Play 2.1, ale od czasu, kiedy to piszę (25 października 2012 r.), Musisz zbudować gałąź rozwojową ze źródła, a działy rozwojowe są nadal aktywnie rozwijane. TLDR: jeszcze nie nadaje się do aplikacji produkcyjnych, daj mu kilka miesięcy

0

Cóż, w rzeczywistości możesz to zrobić. Opisałem szczegóły w mojej odpowiedzi here.

Ale w kilku słowach musisz podać kilka rzeczy w Build.scala.

Zmiana wersji przez ustawienie scalaVersion na 2.10.1 nie pomogła mi, ponieważ SBT nadal trafia do repozytorium i otrzymuje kawałki 2.10.0. Tak więc powiedziałem SBT, aby użył lokalnej kopii Scala, ustawiając następujące zmienne:

scalaVersion := "2.10.1-local", 
autoScalaLibrary := false, 
scalaHome := Some(file("/Program Files (x86)/scala/")) 
Powiązane problemy