【问题标题】:Does Google App Engine support Java 8?Google App Engine 是否支持 Java 8?
【发布时间】:2014-11-27 22:59:09
【问题描述】:

尝试开始使用 Google App Engine - 它是否适用于 Java 8?

我已按照此页面上的说明进行操作: https://console.developers.google.com/start/appengine

选择“Java”,我成功完成了 Maven 构建,但是当我访问 localhost:8080 时没有任何运行。

说明说“确保已安装 Java 7 JDK”,但我刚刚安装了 Java 8 JDK。

我需要单独安装 Apache 吗?

【问题讨论】:

标签: java google-app-engine


【解决方案1】:

Java 8 is now generally available on App Engine Standard Environment,加入 App Engine 柔性环境中的 GA 运行时。

Learn about the differences.

新的 Java 8 运行时具有 Java 7 的所有优点,但还进行了升级和增强:

  • 基于 OpenJDK 8 的 Java 运行时支持标准的公共 Java 库(无白名单)
  • 不强制使用安全管理器 - 您的代码不会受到 Java 权限问题的限制。

【讨论】:

    【解决方案2】:

    在撰写本文时还没有,但您可以跟踪此问题的状态:

    【讨论】:

      【解决方案3】:

      [时间的流逝已将“否”从这个公认的答案变为“是”。请在下面查看其他答案。]

      简短的回答,不。他们会随着时间的推移整合它,但现在如果你使用它,它会给你带来很多错误。我建议不要这样做

      还请注意下面 user7610 的回答 :)。到目前为止,这是在 Cloud Platform 上拥有 Java 8 的唯一方法

      【讨论】:

      • 这是 Google 员工最近发表的一篇文章,证实 Java 8 即将进入 GAE:groups.google.com/d/msg/google-appengine/8y80sEhr7Rc/…
      • @JensBannmann 似乎仍然不受支持,因为我仍然收到“不支持的..版本..”异常..
      • @displayname 查看 Flex。我真的认为这将是能够运行 Java8 的方法。您可以使用它们控制您想要的任何运行时:)。
      • 您的问题很受欢迎,每个寻找与 google app engine 和 java 8 相关的问题的人都可能会因为接受的答案而感到困惑。 @Ian 有解决问题的答案。
      • Google App Engine Java 8 支持从 2017 年第三季度开始全面提供。cloud.google.com/appengine/docs/standard/java/runtime-java8
      【解决方案4】:

      更新:自 2017 年年中起,它在“标准”(沙盒)产品中可用,https://cloud.google.com/blog/products/gcp/java-8-on-app-engine-standard-environment-is-now-generally-available

      在此之前,它是通过托管虚拟机提供的。这个想法是,你为 Docker 容器提供你需要的任何软件(如 Java 8),GAE 将使用它作为你的应用程序实例 VM。您仍然可以获得自动缩放、监控等所有功能。

      托管 VMS 的缺点是您需要为 Compute Engine 虚拟机付费。这意味着您按分钟付费,并且没有免费配额。新用户帐户有 60 天的 300 美元信用额度,但之后您必须付款。

      【讨论】:

      • 如何将 Docker 容器与 GAE 托管的 VMS 进行映射??
      • 嘿用户7610。刚刚注意到您的回答中有一个小错误:试用期实际上是 60 天。不是 3 个月。
      • 已更新,谢谢。要么我一开始就犯了错误,要么条款改变了。
      【解决方案5】:

      如果您有兴趣在 Google App Engine 上使用 lambda 表达式,可以试试Retrolambda。我还没有尝试过,但它声称将 Java 8 lambda 表达式反向移植到 Java 7。

      【讨论】:

        【解决方案6】:

        自 2017 年第三季度起,Google App Engine Java 8 支持正式推出。https://cloud.google.com/appengine/docs/standard/java/runtime-java8

        【讨论】:

          【解决方案7】:

          是的。我们刚刚将其发布到 Beta 版,并很快推出 GA。

          https://cloudplatform.googleblog.com/2017/06/Google-App-Engine-standard-now-supports-Java-8.html

          【讨论】:

            【解决方案8】:

            App Engine 标准 Java 现在支持 Java8。 请参阅 Beta 文档:Java8 on GAE Standard documentation

            谢谢

            【讨论】:

              【解决方案9】:

              这并不完全相同,但您可以将 Java 8 与新的 App Engine“flexible environment”一起使用。我认为您无法访问 App Engine API(例如图像服务或任务队列),但您将能够使用 App Engine 之外的服务,例如 Datastore 和 Pub/Sub。

              还值得牢记的是,该服务目前处于测试阶段(因此未包含在任何 SLA 中)。另外,pricing is different;它不是使用正常的 App Engine 定价结构,而是基于 GCE 虚拟机的使用情况。

              【讨论】:

                【解决方案10】:

                <runtime>java8</runtime> 添加到您的 appengine-web.xml 文件中。

                【讨论】:

                  【解决方案11】:

                  是的,使用 App Engine 柔性环境。以下是官方文档: https://cloud.google.com/appengine/docs/flexible/java/

                  这里是这个实现的 github repo: https://github.com/GoogleCloudPlatform/appengine-java-vm-runtime

                  【讨论】:

                    【解决方案12】:

                    您显然可以使用 JDK8 创建与 JRE7 兼容的字节码,这似乎是 Google 推荐的:https://cloud.google.com/appengine/docs/standard/java/download

                    -source 1.7 -target 1.7
                    

                    【讨论】:

                      【解决方案13】:

                      是的,您可以使用灵活的环境。并更改您的app.yaml的设置

                      vm: true
                      

                      欲了解更多信息,请研究https://cloud.google.com/appengine/docs/flexible/

                      【讨论】:

                        猜你喜欢
                        • 2013-11-18
                        • 1970-01-01
                        • 2012-10-19
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2014-08-05
                        • 2020-02-21
                        • 2017-07-29
                        相关资源
                        最近更新 更多