我是LIFT的新手,我正在尝试找到一个可靠的说明,分别如何使用maven和sbt生成和管理LIFT Web项目。有人可以指导我(或在此提供)最新的说明如何为maven生成的项目设置sbt吗?从我发布的每个帖子来看,它看起来都是LIFT项目的最佳设置:使用mvn生成,使用sbt进行管理。你同意吗? (我不能用sbt生成LIFT / web项目。对吗?SBT只对管理它有好处。对吧?)我尝试过的每条指令都已经过时了。 (我显然可以简单地下载和解压缩原型项目,但我想找到一种更基本的方法来管理环境)谢谢。
答案 0 :(得分:3)
当我使用升降机时,我根本不需要maven,只需要SBT。因此,阅读SBT Getting Started部分非常有用。此外,电梯维基包含一些information。但请务必阅读与正确SBT版本相关的材料。最后,你可以关注我在github上的lift project template。
祝你好运!太棒了;)
通过在你的评论中跟随问题,我在这里放了一些来自我的项目的常见配置。
因此,./project/build.scala
替代./build.sbt
import sbt._
import Keys._
import com.github.siasia._
import PluginKeys._
import WebPlugin._
import WebappPlugin._
object LiftProjectBuild extends Build {
override lazy val settings = super.settings ++ buildSettings
lazy val buildSettings = Seq(
organization := "com.yourorganization",
version := "0.1-SNAPSHOT",
scalaVersion := "2.9.1")
def yourWebSettings = webSettings ++ Seq(
// If you are using jrebel
scanDirectories in Compile := Nil
)
lazy val shade = Project(
id = "project-name",
base = file("."),
settings = defaultSettings ++ yourWebSettings)
lazy val defaultSettings = Defaults.defaultSettings ++ Seq(
name := "project-name",
resolvers ++= Seq(
"Typesafe Repo" at "http://repo.typesafe.com/typesafe/releases",
"Java.net Maven2 Repository" at "http://download.java.net/maven/2/"),
libraryDependencies ++= {
val liftVersion = "2.4-M5"
Seq(
"net.liftweb" %% "lift-webkit" % liftVersion % "compile",
"org.eclipse.jetty" % "jetty-webapp" % "7.5.4.v20111024" % "container",
"org.squeryl" %% "squeryl" % "0.9.5-SNAPSHOT" % "compile",
"ch.qos.logback" % "logback-classic" % "1.0.0" % "compile",
"org.scalatest" %% "scalatest" % "1.6.1" % "test",
"junit" % "junit" % "4.10" % "test")
},
// compile options
scalacOptions ++= Seq("-encoding", "UTF-8", "-deprecation", "-unchecked"),
javacOptions ++= Seq("-Xlint:unchecked", "-Xlint:deprecation"),
// show full stack traces
testOptions in Test += Tests.Argument("-oF")
)
}
./项目/ build.properties
#Project properties
sbt.version=0.11.1
./项目/ plugins.sbt
resolvers += Classpaths.typesafeResolver
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse" % "1.5.0")
libraryDependencies <+= sbtVersion(v => "com.github.siasia" %% "xsbt-web-plugin" % (v+"-0.2.10"))
拥有这三个文件足以配置sbt。
当然,您可以通过调用container:start
答案 1 :(得分:0)
您的里程可能会有所不同,但我对sbt的体验不是很好(过时的文档,版本更改的破坏等)。与使用sbt相比,最近对eclipse scala IDE和相应的maven和jrebel插件的改进使其成为明显的赢家。
如果按照说明操作,您将能够在命令行中进行构建/打包,但是对eclipse功能和快速开发的支持更高。
请参阅示例项目设置: