2012-05-24 4 views
11

Wie benutze ich scala 2.10Mx mit play 2.x.x?scala 2.10Mx mit playframework 2

Ich habe versucht, scalaVersion: = "2.10.0-M3" zu Projekt/Build.scala hinzuzufügen, hatte aber keinen Effekt.

Hier ist mein 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 

    ) 

} 

Ich verwende sbt 0.11.3

+0

Im Prinzip sollte das funktionieren, wenn es an der richtigen Stelle platziert wird. Bitte zeigen Sie die vollständige 'Build.scala' an. Übrigens brauchen Sie SBT 0.11.3 um Scala 2.10 zu benutzen. –

+3

Bis Play eine Version basierend auf Scala 2.10.x hat, können Sie Play + Scala 2.10.x nicht zusammen verwenden. Scala 2.9.x und 2.10.x sind nicht binärkompatibel. – jsuereth

+1

Zwei Gurus von Scala mit unterschiedlichen Meinungen ... wer hat Recht? – Edmondo1984

Antwort

2

play 2.0.x funktioniert nicht mit Scala 2.10. der Play 2.1-Zweig tut, aber von der Zeit, die ich dies schreibe (25. Oktober 2012), müssen Sie den Entwicklungszweig aus Quelle bauen, und die Entwicklungszweige sind noch in aktiver Entwicklung. TLDR: noch nicht für Produktions-Apps geeignet, geben Sie es ein paar Monate

0

Nun, eigentlich können Sie es tun. Ich beschrieb Details in meiner Antwort here.

Aber in wenigen Worten müssen Sie einige Dinge in Build.scala angeben.

Switching Version durch Einstellung scalaVersion zu 2.10.1 hat mir nicht geholfen, weil SBT immer noch zu Repository geht und Stücke von 2.10.0. Also habe ich SBT gesagt, dass ich eine lokale Kopie von Scala verwenden soll, indem ich folgende Variablen setze: