在Windows Azure上部署Play 2.3.X应用程序

时间:2014-09-09 22:14:49

标签: java tomcat azure playframework

我最近使用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插件将我的Pl​​ay应用程序打包为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应用程序重命名为ROOT.war用于Tomcat 7,但这仍然无效。

第二个问题

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

谢谢!

1 个答案:

答案 0 :(得分:0)

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