Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否有“&书信电报;ant antfile=xxx/>”;在maven pom.xml中?_Maven_Ant_Jar - Fatal编程技术网

是否有“&书信电报;ant antfile=xxx/>”;在maven pom.xml中?

是否有“&书信电报;ant antfile=xxx/>”;在maven pom.xml中?,maven,ant,jar,Maven,Ant,Jar,我有两个项目,过去是由蚂蚁建造的。我称它们为P1和P2,P1是一个java项目,P2是一个web项目。P2将包含P1作为jar文件。过去,当我构建P2时,我可以将添加到build.xml中,首先使P1成为一个jar文件,然后将jar复制到P2的lib文件夹中 现在我将把它们都转换成Maven项目。我不知道如何暗示上述过程。我知道有一些方法可以在maven进程中运行ant。但现在P1也是一个maven项目。我如何处理这个问题?我想在包P2之前创建一个P1.jar,我真的不认为有必要首先将P1.ja

我有两个项目,过去是由蚂蚁建造的。我称它们为P1和P2,P1是一个java项目,P2是一个web项目。P2将包含P1作为jar文件。过去,当我构建P2时,我可以将
添加到
build.xml
中,首先使P1成为一个jar文件,然后将jar复制到P2的lib文件夹中


现在我将把它们都转换成Maven项目。我不知道如何暗示上述过程。我知道有一些方法可以在maven进程中运行
ant
。但现在P1也是一个maven项目。我如何处理这个问题?我想在包P2之前创建一个P1.jar,我真的不认为有必要首先将P1.jar部署或安装到maven repo。有什么方便的方法吗?

为什么要将Ant项目转换为Maven?是否有一些问题是您试图通过构建来解决的?或者,您是否认为Maven更好,因此需要重写Maven中的所有内容?不要碰有用的东西。有足够多的破东西你可以处理

在Maven中,您可以创建以下两个独立的项目:

  • P1将构建jar并将此jar部署到本地Maven存储库中
  • 当P2构建时,它将从Maven存储库中获取预构建的P1 jar
您可以使用或作为本地Maven回购协议


您还可以将这两个项目组织为。在这个场景中,P1和P2将是两个子项目,而P3除了一个
pom.xml
之外几乎什么都没有,它将构建这两个项目。

非常感谢。将ant转换为maven的决定是由我们的团队做出的,因为我们的svn服务器有很多重复的jar文件。我们有一个nexus服务器来控制我们的JAR,但我有另一个问题,P1也被我们称之为P4的项目使用,当我们使用ant构建时,没有问题。如何在maven中构建这三个项目?在构建其他项目之前,我可以运行mvn install自动安装P1.jar吗?@lbear在依赖P1的项目的pom文件中将P1声明为依赖项。@lbear在转换为Maven之前,请看一看。Ivy与您当前的Ant构建集成。您所要做的就是创建一个
ivy.xml
来声明您的第一级jar依赖项(就像您使用Maven一样),并通过
下载jar。您可以获得相同的Maven依赖项解析,但基本上可以保持旧的构建系统完好无损。对于新项目,我更喜欢Maven而不是Ant w/Ivy,但对于使用Ivy的旧项目,Maven可以提供90%的回报,但不必重新构建所有内容。@lbear关于Ant的Ivy的优秀书籍是。网上的狩猎书籍在他们的收藏中。@DavidW。谢谢。我试试看。