设置详细信息 1.带有sbt插件的IntelliJ Idea Community Edition 2018.2.5 2. PlayFramework 3. scalaVersion 2.12.8 4. Java 1.8(开放的JDK) 5. sbt:将sbt与play-scala-hello-world-tutorial捆绑在一起 6.主机操作系统:Limux Mint 18.3,KDE Plasma 5
问题: 我尝试使用Playframework的hello-world项目模板-使用IntelliJ将其导入为sbt项目并接受默认设置。进行一些编辑后,我直接在文件系统中删除了该项目,并用新副本替换了该项目。但是,当我使用带有“ run”命令的sbt_command窗口运行该项目时,该项目将启动绑定到端口9000的Play,并且正在运行的项目仍显示该应用程序的“旧”修改版本。
重现此问题的步骤:
编辑HomeController.scala;
来自
def index() = Action { implicit request: Request[AnyContent] =>
Ok(views.html.index())
}
至
def index() = Action { implicit request: Request[AnyContent] =>
Ok("Just Play Scala")
}
尝试的分辨率 -从IntelliJ关闭了项目,并从文件系统上的IntelliJ-Idea工作区中删除了项目根文件夹 -执行#1并删除.ivy2和.mvn目录 -尝试在运行Fedora28的VM中使用文本编辑器复制更改来重现该问题。一切正常。所有更改都会在播放过程中动态重新加载,并且更改在可见的应用程序中可见。
诊断 IntelliJ不能按预期/广告般用于重新编译sbt项目,或者我不知道如何使用IDE正确清除以前编译的代码。