【发布时间】:2014-02-14 20:36:42
【问题描述】:
这似乎是一个微不足道的问题,但我已经用 Google 搜索了大约 1 小时,但没有找到直接解决这个问题的答案,所以这里是:
堆栈:
- Java
- Tomcat7
- MySQL
- OpenDS
开发环境 IntelliJ IDEA(个人) - 我们的一些开发人员更喜欢 Eclipse
我有一个 Java/Spring 项目,我们部署到多个环境中,我正在尝试创建一个构建过程供我们开发人员使用,这将允许我们从我们的工作站创建一个可部署的 WAR 文件。例如,我希望能够构建一个 WAR,然后我可以通过 ANT 或手动部署到 Servlet 容器:
- 沙盒 - 将在具有本地 Tomcat 等的给定工作站上运行的构建。
- DEV - 从我的工作站构建一个 WAR,该 WAR 可以发送到另一个团队以部署在托管的 DEV 服务器上
- QA - 与 DEV 相同,但替换变量存在明显差异,例如引用的其他服务器名称、作为加密字符串传递的密码等。
- PROD - 与 QA 相同...
我希望能够做的是,无论是从命令行还是通过 IntelliJ,指定我想要为哪个环境打包 WAR 文件并运行它。然后拿起 WAR,做我需要做的事情。
再次,我知道这听起来微不足道,我缺少一些关于 ANT 的非常基本的东西,但非常感谢您提供的任何帮助。
【问题讨论】:
-
很高兴有帮助 :) 如果您发现我的回答很有用,请考虑将其标记为“已接受”。如果您有任何疑问或需要详细说明,请随时发布。再次,很高兴有帮助:)
-
对您的问题:“我希望能够做的是,无论是从命令行还是通过 IntelliJ,指定我想要为哪个环境打包 WAR 文件,然后运行它。然后拿起战争,做我需要做的事情。” - 在您的 ant 目标中构建智能,以使用读取或评估属性的功能,例如
ant -f build.xml -Denv.value=[DEV,PROD,...] -propertyfile=<setup-your-env-specific-props>.xml -
再次,非常感谢您将我的回答标记为已接受 :) 很高兴能帮上忙 :) 祝你好运。
标签: java ant intellij-idea automated-deploy