【发布时间】:2012-01-27 04:31:28
【问题描述】:
首先,我对 Scala、SBT 和 Vaadin 非常陌生。
我正在尝试使用 Timeline 插件制作 Scala 和 Vaadin 应用程序。我必须将 Timeline jar(非托管依赖项)和 Vaadin 依赖项放在 build 项目(project/)下,这样我就可以在构建期间对其进行编译(好吧,通过调用 vaadin 任务) .如何在不复制 jar 和依赖项的情况下将 vaadin-timeline-agpl-3.0-1.2.3.jar 和 Vaadin 依赖项合并到 vaadinTest 项目中?下面是我的项目结构。谢谢你。顺便说一句,我已经尝试过现有的 Vaadin 插件,但它们很糟糕(我需要做的就是编译小部件集)。
这是我的项目结构:
vaadinTest/
project/
lib/vaadin-timeline-agpl-3.0-1.2.3.jar
build.sbt
ProjectBuild.scala
src/
vaadinTest/project/build.sbt:
libraryDependencies ++= Seq(
"com.google.gwt" % "gwt-user" % "2.4.0",
"com.google.gwt" % "gwt-dev" % "2.4.0",
"com.vaadin" % "vaadin" % "6.7.4"
)
vaadinTest/project/ProjectBuild.scala:
import com.google.gwt.dev.Compiler
import sbt._
import Keys._
object ProjectBuild extends Build {
val deps = Seq(
"org.eclipse.jetty" % "jetty-server" % "8.1.0.RC5",
"org.eclipse.jetty" % "jetty-webapp" % "8.1.0.RC5",
"org.eclipse.jetty" % "jetty-servlet" % "8.1.0.RC5",
)
val vaadinTest = Project(
"vaadinTest", file("."), Defaults.defaultSettings
++ Seq(libraryDependencies ++= deps)
++ Seq(vaadinTask)
)
val vaadin = TaskKey[Unit]("vaadin")
val vaadinTask = vaadin := {
Compiler.main(Array("-war", "src/main/webapp/VAADIN/widgetsets",
"com.vaadin.addon.timeline.gwt.TimelineWidgetSet"))
}
}
【问题讨论】: