如何配置播放!仅使用Ant或Maven构建为战争的框架项目?

时间:2011-11-03 19:15:35

标签: deployment ant maven playframework war

我从文档(http://www.playframework.org/documentation/1.2.1/deployment)中了解到,如果Play!框架已经正确安装和配置,然后创建可部署的战争就像运行命令一样简单:

play war myapp -o myapp.war

但是如果Play!框架没有安装在目标机器上,并且要求从Ant或Maven构建脚本创建标准war的需求?如何创建可以利用Play的构建脚本或pom文件? Framework API,用于生成所需的war伪像而无需将框架永久安装到目标机器。这可以轻松完成吗?

3 个答案:

答案 0 :(得分:2)

不直接。如果你查看play war命令的python脚本,你会看到相当多的处理过程。

您可以将其复制到ANT或Maven脚本中,但是您将失去对未来升级的任何向后兼容性。我建议要么确保包含相关的Play框架文件,以便可以完成构建,或者在中央构建服务器上进行WAR构建,并将WAR文件分发(或从CVS / SVN / GIT加载)到目标机器(或多个)。

答案 1 :(得分:1)

通常情况如下:

  1. 构建Play应用程序并在安装了Play的计算机上生成WAR。
  2. 将Play生成的WAR部署到Maven存储库(最好是在组中共享的Maven repo服务器,或通过版本控制同步的本地Maven repo目录,或者只是将WAR检入版本控制,并且队友会安装通过mvn install进入他们当地的Maven仓库。
  3. 在Maven项目中添加WAR作为依赖项,以便将其包含在构建中。
  4. 我不相信自从尝试在没有安装Play的情况下构建Play应用程序WAR。 WAR需要在安装了Play的计算机上生成,然后作为打包的WAR(最好通过共享的Maven repo服务器,如Archiva或Nexus)分发到其他计算机。

答案 2 :(得分:0)

据我所知,Play框架与你的应用程序一起打包在war文件中。因此,在没有安装游戏或可用游戏的情况下尝试构建似乎非常困