jps*_*ain 4 scala sbt xsbt-web-plugin
我正在使用sbt 0.11.2和xsbt-web-plugin 0.2.10构建一个Wicket(1.5.3)应用程序.我正在使用这个版本的Jetty:
"org.eclipse.jetty" % "jetty-webapp" % "8.0.1.v20110908" % "container",
所以,当我这样做
> container:start
我的应用程序启动就好了.
但是如果我改变一些html,那么改变就不会发生,直到我这样做
> copy-resources
和scala源代码更改在我做之前不会反映出来
> aux-compile(这个很难找到!!)
问题是我希望立即反映这一点.我可以
> ~ copy-resources
要么
> ~ aux-compile
单独使这一个或另一个将自动保存.
问题是,我没有看到任何明显的方法一方面是因为我不能没有按下回车键率先拿到了命令提示符下输入第二个波浪为前缀的命令,并取消运行波浪命令.
谢谢.
更新:
我发布了一个我想要做的最小例子:https:
//github.com/jpswain/DummySbtScalaWicket.git
我通过运行sbt(0.11.2)来解决这个问题,然后再做
> container:start
因此,您会注意到,如果您执行"~aux-compile"并更改日志语句,或更改标签读取的名称,则会立即更新.如果您执行"~copy-resources"并更改"Hello" - >"Hola",您将看到动态更改.我正在尝试这样做,以便两者都将在保存时完成."〜容器:重装/"似乎什么都不做!
来自@Vasil Remeniuk的答案似乎是正确的方法,除了我还没弄清楚将代码放在哪里以确保其正常工作.(我得到了一个语法错误.)如果有人愿意验证该代码是否有效,或者我的项目有什么问题会阻止它工作,那会很棒吗?
谢谢!!
杰米
$ sbt
一旦sbt出现,请执行以下操作:
> container:start
> ~auxx
Mar*_*rah 14
~ 接受任何命令作为参数,包括命令列表:
~ ;copy-resources;aux-compile
Run Code Online (Sandbox Code Playgroud)
这将在每个触发器上运行copy-resources然后运行aux-compile.
但是,在这种情况下,我更喜欢Vasil的解决方案,因为它只需要对任务图进行一次评估.
您可以创建自己的任务来调用/依赖aux-compile和copy-resources
import sbt._
import Keys._
import com.github.siasia._
import PluginKeys._
object SampleProject extends Build {
val sampleTask = TaskKey[Unit]("combined")
val setngs = Seq(
sampleTask <<= (copyResources in Compile, auxCompile in Compile) map {
(c, p) =>
}
)
val root = Project("root", file(".")) settings(setngs:_*)
override val projects = Seq(root)
}
Run Code Online (Sandbox Code Playgroud)
,并不断调用新任务
~combined
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1680 次 |
| 最近记录: |