![](/img/trans.png)
[英]Eclipse: How to build an executable jar using ant with external project dependencies?
[英]How to build a project and it's dependencies using Ant and Ivy
我有一个具有两个依赖项的WebApp,如下所示。 我想构建一个用于使用Ant + Ivy在Tomcat上部署的war文件。
+
+-MyWebApp // this Dynamic Java Web Application (deployed Tomcat and launches
// a thread contained in MyApp)
+-MyApp // this is just a vanilla Java Application
+-MyCommonStuff // these are common classes shared between MyApp and MyWebApp
// Ex. Database access code & business classes
使用Ant文档,我已经研究出如何为每个项目创建适当的build.xml文件。 换句话说,每个项目都有一个独立的build.xml,因此要构建整个项目,我要做的就是:
mkdir build
cd build
export SOME_COMMONBASE=`pwd`
svn co https://mybuildmachine.lan/svn/mycommonstuff mycommonstuff
cd mycommonstuff
ant
cd ..
% this produces mycommonstuff.jar
svn co https://mybuildmachine.lan/svn/myapp myapp
cd myapp
ant
cd ..
% this produces myapp.jar
svn co https://mybuildmachine.lan/svn/mywebapp mywebapp
cd mycommonstuff
ant
cd ..
% this produces mywebapp.war and deploys it to Tomcat
现在,我要做的就是将所有内容组合在一起,这样我就可以开始一个构建。 从表面上看,我似乎应该能够以某种方式创建一个Ivy build.xml,它将依赖项连接在一起。 但是,我已经阅读了Ivy文档和Googled的示例,但是对于如何完成此任务,我仍然一无所知。 有人可以给我一些指导我该怎么做吗?
您要做的是使用Ivy的Ant任务进行布线。 那里有很多更好的细节,但基本上,您需要自己的Ivy存储库,然后在此处发布自己的项目工件以在其他地方使用它们。
对于JAR库项目:
对于WAR项目:
至于其他部分,Ant本身有许多任务可以为您提供帮助,然后其他人提供了一些任务,例如tigris的svn任务(用于从SVN获取源代码)和Ant的可选SCP任务(用于将WAR文件传输到外部服务器)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.