如何找出我正在使用的 Play 版本?

Posted

技术标签:

【中文标题】如何找出我正在使用的 Play 版本?【英文标题】:How to find out which Play version I'm using? 【发布时间】:2014-12-12 03:19:02 【问题描述】:

有点愚蠢的问题,但我使用Activator 开始使用播放框架,现在需要看看我使用的是什么版本。 2.3 出来支持 docker,但是当我把

dockerExposedPorts in Docker := Seq(9000, 9443)

在我的build.sbt 中,它抱怨它不知道 dockerExposedPorts 是什么,所以我想我可能正在运行 2.2。

【问题讨论】:

它实际上是...activator docker:stage 从 2.3 开始工作 【参考方案1】:

我使用以下内容列出并突出显示游戏项目中的所有游戏版本。也适用于多模块项目。

以下内容已在 macOS Sierra 上使用默认的 BSD find 进行了测试,它附带了通过 brew install grep 安装的 GNU grep。后者是必需的,因为以下命令需要支持 Perl 正则表达式的 grep(BSD grep 不支持)。

您可以通过执行此操作检查您的 PATH 上的 grep 是否支持 Perl-regex(应该显示 -P 选项可用):

    $ ggrep --help | grep -i Perl
  -P, --perl-regexp         PATTERN is a Perl regular expression

(ggrep 是通过 Homebrew 安装的 GNU grep)

现在,进入实际命令(注意命令中的 ggrep):

   $ find . -name "plugins.sbt" -exec ggrep -PHin --color=always 'com.typesafe.play.*sbt-plugin.*%\s*"\K.*?(?=")'  \;

输出:

关于 grep 选项的快速说明(摘自 grep 帮助):

  -P, --perl-regexp         PATTERN is a Perl regular expression
  -i, --ignore-case         ignore case distinctions
  -n, --line-number         print line number with output lines
  -H, --with-filename       print file name with output lines

【讨论】:

【参考方案2】:

在激活器控制台中输入playVersion

您也可以在project/plugins.sbt 中查找该行

addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.2")

本例中播放版本为2.3.2

【讨论】:

嗨 James,playVersion 是只显示 plugin.sbt 还是从二进制文件中获取版本?那里可能存在不匹配吗?谢谢,路易斯 在激活器控制台中输入 playVersion 时出现“[错误] Not a valid command: playVersion”。但是,我确实在 project/plugins.sbt 文件中看到了 Play 版本。

以上是关于如何找出我正在使用的 Play 版本?的主要内容,如果未能解决你的问题,请参考以下文章

如何找出我正在使用的 Log4J 版本?

如何找出我的 WebLogic 正在使用的 Mojarra 的当前版本?

我们如何更改 Play Framework 内部使用的 EHCache 版本?

如何找出我正在运行的 Doctrine 版本?

Play商店关闭了BETA版本的wrt生产版本

我如何找出Wildfly 1x.x.x中使用的RESTEasy版本