繁体   English   中英

一步构建Java Web应用程序

[英]Making a Java Web Application build in one step

Joel测试:改进代码的12个步骤第二步指出“可以一步完成一个构建吗?”。 我对此的回答是“否”。 我的应用程序的结构如下:

+
+-MyApp // this is just a vanilla Java Application
+-MyWebApp // this Dynamic Java Web Application (deployed Tomcat and launches
           // a thread contained in MyApp) 
+-MyCommonStuff // these are common classes shared between MyApp and MyWebApp
                // Ex. Database access code & business classes

为了构建和部署我的软件,我执行以下步骤:
1.从svn签出MyApp,MyWebApp,MyCommonStuff
2.构建MyCommonStuff.jar并复制到“ libs”目录
3.构建MyApp并复制到“ libs”目录
4.构建MyWebApp.war(Ant build.xml文件指定MyApp.jar和MyCommonStuff.jar的位置)
5. build.xml的deploy部分使用Tomcat部署任务来部署到tomcat服务器。

我的问题是上面的乔尔规则是否适用于这种情况。 即是否应该有一个执行步骤1.至5.的“主”构建脚本?
该脚本应该只是普通的#/ bin / sh脚本,还是可以使用的工具? 我的首选是坚持使用Ant和linux控制台命令。
谢谢

您可以(并且应该)使用maven2 它支持所需的一切(通过插件)。 您只需要遵循其目录约定即可。

另外,我建议使用Continous Integration Engine,它将采用您的maven配置并执行和部署所有内容。 哈德森TeamCity是不错的选择。

如果您只想使用Ant,Maven的替代方法是Ivy 这只是一个依赖项管理器,有点像Maven,但是没有Maven做的所有其他事情。

我建议使用两者之一。 如果您有一个具有此类依赖项的项目,那么将其存储在中央存储库中并使用依赖项管理器来包含它们,将使您自己变得更加轻松!

您应该执行一个全局的Ant脚本,通过Ant ant任务调用所有小的Ant部分。

阅读其他答案后进行编辑:您还应该使用Maven。 但是,如果Maven确实过于矫kill过正,而您只想一步一步启动整个构建,请使用全局build.xml

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM