【问题标题】:Deploying a Play 2.3.X application on Windows Azure在 Windows Azure 上部署 Play 2.3.X 应用程序
【发布时间】:2014-09-09 22:14:49
【问题描述】:

我最近使用 Play 2.3.4 创建了一个小型 Web 应用程序。它在本地运行良好,所以现在我想在 Windows Azure 上运行它。

到目前为止,我已经按照本指南http://azure.microsoft.com/en-us/documentation/articles/web-sites-java-get-started/ 使用 Azure 应用程序库创建了一个 Java 网站。我选择的服务器是 Apache Tomcat 7。接下来的步骤是本指南,http://azure.microsoft.com/en-us/documentation/articles/web-sites-java-add-app/,其中指出我需要在 webapps 文件夹中放置一个 WAR 文件。我已按照指南使用 Play2War 插件将我的 Play 应用程序打包为 WAR 文件。然后我通过 FTP 将该 WAR 文件添加到 d:\home\site\wwwroot\bin\apache-tomcat-7.0.52\webapps。

但是,当我访问该网站时,我看到的只是默认的 tomcat 页面。

第一个问题

我是否正确使用了 Play2War 插件?

我修改了 plugins.sbt 和 build.sbt

plugins.sbt

resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"

// The Play plugin
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.3.4")

// web plugins
addSbtPlugin("com.typesafe.sbt" % "sbt-coffeescript" % "1.0.0")

addSbtPlugin("com.typesafe.sbt" % "sbt-less" % "1.0.0")

addSbtPlugin("com.typesafe.sbt" % "sbt-jshint" % "1.0.1")

addSbtPlugin("com.typesafe.sbt" % "sbt-rjs" % "1.0.1")

addSbtPlugin("com.typesafe.sbt" % "sbt-digest" % "1.0.0")

addSbtPlugin("com.typesafe.sbt" % "sbt-mocha" % "1.0.0")

addSbtPlugin("com.github.play2war" % "play2-war-plugin" % "1.3-beta2") 

build.sbt

import com.github.play2war.plugin._

name := """playtest4"""

version := "1.0-SNAPSHOT"

Play2WarPlugin.play2WarSettings

Play2WarKeys.servletVersion := "3.0"

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

scalaVersion := "2.11.1"

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

之后,我安装了 sbt 并运行了 sbt war 命令。 play2war 部署页面说,如果我想将我的应用程序部署为根上下文 http://host:port/,我需要将 WAR 应用程序重命名为 Tomcat 7 的 ROOT.war,但这仍然不起作用。

第二个问题

有没有更简单的方法在 Azure 上部署我的应用程序?

谢谢!

【问题讨论】:

    标签: java tomcat azure playframework


    【解决方案1】:

    请告诉我您的 azure 网站名称,我可以进行调查。请确保在上传 ROOT.war 文件之前删除 :\home\site\wwwroot\bin\apache-tomcat-7.0.52\webapps 中的文件夹 ROOT。此外,一旦您上传了 ROOT.war,tomcat 应该会自动部署 war 文件,即将其内容提取到 ROOT 目录中。但可以肯定的是,重新启动您的 azure 网站,然后点击您的 azure 网站。

    【讨论】:

    • 嗨 Ranjinth,很抱歉回复晚了。我实际上能够使用本教程在 Azure 上部署我的 Play 应用程序 msopentech.com/blog/2014/09/26/…
    • 但是,我决定返回并尝试将网站与我从 Play 应用程序创建的 war 文件一起使用。我按照您的指示进行了操作,但它仍然对我不起作用。我只有一个空白页。我想通过创建一个新网站并创建一个新的默认 Play 应用程序(当您在 cmd 中运行“activator new”时)而不是我构建的应用程序来再次尝试此操作。我还没有看到这是否可行,因为当我尝试使用 kudu 访问文件夹时,它一直给我一个错误,说“此站点当前不可用”?我不知道为什么现在根本无法访问这些文件夹
    • 好吧,它终于不再给我“此站点当前不可用”消息了。我按照您的指示进行操作,但再次出现空白页 :(。如果您仍想调查,我的天蓝色网站名称是 play-cloud-photos4.azurewebsites.net
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-08
    • 1970-01-01
    • 2016-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多