OSX Play 框架自动重新加载

2024-03-06

我已经在互联网上搜索了几个小时,有很多“有用”的建议......但只会带来问题。

这就是我,几乎一模一样:

在docker容器中播放框架自动加载 https://stackoverflow.com/questions/26022395/play-framework-auto-loading-in-docker-container

我正在运行最新的(我想,不知道如何检查,但下载于

FROM ubuntu:latest
MAINTAINER [REDACTED]
RUN sudo apt-get update
RUN sudo apt-get -y install software-properties-common
RUN sudo apt-add-repository ppa:webupd8team/java
RUN sudo apt-get update
RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
RUN sudo apt-get -y install oracle-java8-installer
RUN java -version

Multiple http://quabr.com/27182804/play-framework-2-3-does-not-detect-changes sources https://github.com/playframework/playframework/issues/4208互联网上出现相同或相似的问题,并且或多或少得出相同的结论结论 https://github.com/playframework/playframework/issues/3246。我正在启动我的播放应用程序,如下所示:

我不会重复上面链接的内容,基本上是相同的情况。 (检测到文件更改,它显示编译,尽管网页不反映更改。)此外,我通过反编译生成的 .class 文件来验证正确的编译,它显示正确的代码。

现在,当我说出魔法词时:将以下行添加到我的 build.sbt 文件中

PlayKeys.playWatchService := play.sbtplugin.run.PlayWatchService.sbt(pollInterval.value)

我得到的总体 build.sbt 为:

name := """cms-work"""

version := "1.0-SNAPSHOT"

retrieveManaged := true

lazy val root = (project in file(".")).enablePlugins(PlayJava)

scalaVersion := "2.11.6"

libraryDependencies ++= Seq(
  javaJdbc,
  cache,
  javaWs
)

// Play provides two styles of routers, one expects its actions to be injected, the
// other, legacy style, accesses its actions statically.
routesGenerator := InjectedRoutesGenerator

// Polling for auto-reload, because networked filesystem.
PlayKeys.playWatchService := play.sbtplugin.run.PlayWatchService.sbt(pollInterval.value)

Running ./activator在我的项目目录中,它会重新评估我的构建文件并生成以下内容:

/root/cms-work/build.sbt:23: error: value playWatchService is not a member of object play.sbt.Play.autoImport.PlayKeys
PlayKeys.playWatchService := play.sbtplugin.run.PlayWatchService.sbt(pollInterval.value)
         ^
[error] Type error in expression

显然,一刀切的解决方案不再适用。从那以后我就被难住了。自 2.3.x 以来,我绝对没有发现任何会使此命令无效的更改。相反,我看到things https://github.com/playframework/playframework/issues/3246提到“在 2.3.2 之后工作”,我就是这样。

PS:

谁能解释一下链接帖子末尾描述的奇怪的 Ctrl-D 行为。我也遇到了同样的情况,考虑到 Ctrl-D 应该退出这一事实,这似乎很奇怪......


好吧,更多的互联网搜索,我终于崩溃并挖掘了 Play! github上找到了他们的测试build.sbt框架,正好使用的是new option.

显然,在迁移指南的深处已经注意到了这一点。 (我花了一段时间才找到它。)

显然,我的错误在于假设 2.4.0 包含在 2.3.2+ 中,而没有检查隐藏得很好的(以我的拙见)文档。对于遇到类似情况的其他人,不要再犹豫了:

PlayKeys.fileWatchService := play.sbtplugin.run.PlayWatchService.sbt(pollInterval.value)

这是播放轮询的新语法,截至2.4.0。如果这导致另一个错误,请检查您正在使用的版本的迁移报告,看看他们是否再次更改了它。


只是想知道,我是否疯狂地期待着某种This is Deprecated是要吐出信息,而不是盲目谴责我所做的一切?这似乎是为未来添加的一些东西。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

OSX Play 框架自动重新加载 的相关文章

随机推荐

  • StrictMode 策略违规:android.os.StrictMode$StrictModeDiskReadViolation:应用程序 super.onCreate 处的策略 = 327711 违规 = 2

    当我打开严格模式检测全部时 我的应用程序崩溃了应用程序的 super onCreate 即 在我让任何代码执行任何操作之前 我的应用程序 onCreate 打开严格模式如下 override fun onCreate if BuildCon
  • 使用 SearchView 延迟调用 SearchView.OnQueryTextListener 中的 onQueryTextChange()

    Using a SearchView在我的应用程序中 无论如何 我可以延迟对 onQueryTextChange 方法的调用 例如 当用户键入字符序列时 他必须等待此方法被调用 这个等待应该not取决于已输入的字符数 但在调用方法之前需要短

  • 替换为前标记之间的新行

    我想转换 p Code is following p pre lt html gt br lt html gt pre to p Code is following p pre lt html gt lt html gt pre 我不知道如
  • 为什么 System.IO.File.Exists(string path) 返回 false?

    System IO File Exists string path 即使文件存在于指定路径上 也始终返回 false 可能的解决方案是什么 这很可能是一个权限问题 来自文档 http msdn microsoft com en us lib
  • 给定 3D 空间中的 N 个点,如何找到包含这 N 个点的最小球体?

    给定 3D 空间中的 N 个点 如何找到包含这 N 个点的最小球体 这个问题称为最小包围球问题 谷歌这个术语可以找到相关的教程和论文 这是一种实现 http www inf ethz ch personal gaertner minibal
  • 自定义 OpenFileDialog

    我正在用 C 开发 winforms 应用程序 我想要实现的是从用户那里获取一个文件 我正在使用以下代码 OpenFileDialog dlg new OpenFileDialog if dlg ShowDialog DialogResul
  • 是否可以从(函子成员的)函数签名中检索参数类型以在模板中使用?

    假设你有一个函子 struct MyFunctor bool operator int value return true 是否可以检索函子的成员参数类型以在模板中使用 以下是这个神话功能的使用 template lt typename F
  • android - 连接时套接字超时

    我正在尝试在 Android 上实现 tcp 客户端应用程序 当我尝试连接到 C 服务器时 套接字在尝试连接到服务器时超时 My code new Thread new ClientThread start try PrintWriter
  • 从字符数组更改为字符串时出现“字符串下标超出范围”错误?

    我开始使用字符串代替字符数组 当我将大小为 5 定义的字符数组之一更改为字符串时遇到错误 我在尝试运行程序时得到的错误是 表达式 字符串下标超出范围 newWord 最初是一个字符数组 但将其更改为字符串后 我收到此错误 我不明白是什么原因
  • 为什么这个补码捷径有效?

    形成二进制数的补码的一种捷径方法是从右侧复制位 直到复制了一位 然后对剩余位求补 反转 这在SO上有解释here https stackoverflow com questions 33592801 converting binary to
  • 如何获取字符串中可能重叠的匹配项

    我正在寻找一种方法 无论是在 Ruby 还是 Javascript 中 它都能为我提供字符串中与正则表达式匹配的所有匹配项 可能重叠 假设我有str abcadc 我想找到出现的a后跟任意数量的字符 后跟c 我正在寻找的结果是 abc ad
  • 根据其他常数定义一个常数

    很抱歉 如果这个问题看起来很幼稚 但我无法在任何地方找到明确的答案 我必须根据先前定义的常量定义一个常量 例如 define CONST A 2 define CONST B 3 define CONST C CONST A CONST B
  • PHP die() 清理所有页面

    一道php die函数问题 当我使用 die 时 它会清除所有页面元素 有什么方法可以回显错误消息而不清理所有页面 当我使用 die 停止代码并调出消息时 它看起来像是跳转到另一个页面 这是我的代码
  • 平凡的析构函数会导致别名吗

    C 11 3 8 1 声明 对于具有简单析构函数的对象 我可以通过分配其存储来结束其生命周期 我想知道微不足道的析构函数是否可以延长对象的生命周期 并通过 销毁一个我更早结束生命周期的对象 来导致别名问题 首先 我知道一些东西是安全且无别名
  • 在 VS Code 中调试时观察窗口或计算表达式?

    我很喜欢视觉工作室代码 https code visualstudio com 它是一个很棒的编辑器 但在调试 Node 应用程序时有一件事确实让我烦恼 我看不到任何类型的监视窗口或在调试时评估表达式的能力 这使得调试非常痛苦 我正在考虑回
  • 天蓝色通知中心 - 应用程序卸载

    我想使用 Azure 通知中心向跨 iOS Android 和 Windows Phone 运行我的应用程序的用户发送推送通知 我已经成功地完成了基础工作 但我不知道如何管理应用程序卸载故事 启动时 移动应用程序将调用我的 Identity
  • 是否可以手动销毁SurfaceView?

    即使调用活动的 onPause 我的 SurfaceView 也不会被破坏 我正在处理中的线程 public void surfaceCreated SurfaceHolder holder if mGameThread getState
  • R Shiny:通过循环添加到绘图

    我正在尝试创建一个使用 Shiny 显示采样方式动画的应用程序 与所示示例类似的内容here http onlinestatbook com stat sim sampling dist 这是一些最小的代码 仅显示我遇到问题的部分 这不是我
  • CakePHP 链接 css 文件和 javascript 文件

    如何将 css 文件和 javascript jquery 文件链接到控制器 视图 我正在使用 CakePHP 1 3 并在网上找到了以下代码 但我似乎无法弄清楚将其放在哪里 其次 将名为 css file 的 css 文件放在哪里 任何帮
  • OSX Play 框架自动重新加载

    我已经在互联网上搜索了几个小时 有很多 有用 的建议 但只会带来问题 这就是我 几乎一模一样 在docker容器中播放框架自动加载 https stackoverflow com questions 26022395 play framew