【问题标题】:Play 2.2.2 with Java 11使用 Java 11 玩 2.2.2
【发布时间】:2019-03-19 13:47:01
【问题描述】:

我有一个 Play 2.2.2 项目,我通常使用 activator 1.3.12 运行。现在我更新到 Java 11 并且激活器抱怨如下:

The java installation you have is not up to date
activator requires at least version 1.6+, you have
version 11

Please go to http://www.java.com/getjava/ and download
a valid Java Runtime and install before running activator.

如果我尝试直接使用 sbt 1.2.4 运行应用程序,我会收到未解决的依赖路径错误

Note: Unresolved dependencies path:
[warn]      com.typesafe.play:sbt-plugin:2.2.2 (scalaVersion=2.12, sbtVersion=1.0) (/myProject/project/plugins.sbt#L8-9) 
[warn]        +- default:myProject-build:0.1.0-SNAPSHOT (scalaVersion=2.12, sbtVersion=1.0) 
[error] sbt.librarymanagement.ResolveException: unresolved dependency: com.typesafe.play#sbt-plugin;2.2.2: not found

有人对如何让这个旧项目在 Java 11 下运行有任何建议吗?

【问题讨论】:

  • 这不可能,我想。 SBT 1.x 仅适用于 Play >= 2.5,旧的激活器(它只是一种 SBT 启动器)不适用于 Java > 8。只需继续使用 Java 8 JRE。
  • 不仅是 Play 或激活器,Play 和您的项目还有大量依赖项,这些依赖项可能还没有为 Java > 8 做好准备,例如在运行时进行版本检查,使用会导致运行时错误的已弃用/删除的类。

标签: java playframework sbt playframework-2.2 typesafe-activator


【解决方案1】:

以 SBT 为例,记住 SBT 是 Scala 和 Java 项目的开源构建工具,类似于 Java 的 Maven 和 Ant,按照这个思路,Scala 对 Java 的兼容性有最低和最高要求,在此链接中,您可以找到信息:

https://docs.scala-lang.org/overviews/jdk-compatibility/overview.html

我应该将你的 java 版本降级到 10。

祝你好运。

【讨论】:

    猜你喜欢
    • 2014-05-18
    • 2014-09-26
    • 1970-01-01
    • 2014-05-13
    • 2017-01-11
    • 1970-01-01
    • 2023-03-21
    • 2014-04-21
    • 1970-01-01
    相关资源
    最近更新 更多