2012-07-24 96 views
0

我们使用IVY的原因是我们已经有了ANT脚本。意思是,默认情况下没有兼容maven的文件夹。我们不得不创建这样的约定。在IVY的类路径中包含maven convention文件夹

现在,我已经实施了IVYing。决心后,我做这个的

<ivy:cachepath pathid="ivy.test.classpath" conf="test" settingsref="ivy.ref" /> 

的问题,它不包括

src/test/java , src/test/resources 

什么是包括的最佳方式。

我目前正在做的是创建另一个类路径(后缀.extended),其中包括原始类路径以及新文件夹。

是否有“IVYier”的方式来做到这一点?也许可以在依赖文件ivy.xml中添加一些内容,或者通过一种方式告诉它执行maven。

在此先感谢

回答

1

为什么你需要将源显示目录添加到类路径?

我通常只需要将编译后的类目录添加到类路径中,并且通常更容易直接执行像Junit这样需要以此方式配置的几个任务。

例如:

<junit ....> 
    <classpath> 
     <path refid="runtime.path"/> 
     <pathelement path="${classes.dir}"/> 
    </classpath> 
    .. 
</junit> 
+0

这就是我的意思。 'runtime.path'默认不能包含$ {classes.dir}? 这是我的理解,在Maven中,你甚至不需要这样做。 – 2012-07-25 20:33:52

+0

@EyadEbrahim在ANT中无法有效地做到这一点。常春藤是一个依赖管理器,不知道编译的类文件的位置在哪里。另一方面,Maven具有一组标准的目录,使得更容易对构建如何工作进行假设。最后,Maven还提供了“开箱即用”的构建逻辑,进一步大大减少了写入逻辑的数量。 – 2012-07-26 19:06:17

+0

我只需要在这里进行验证。那些正是我的想法。 Maven是一个构建工具。 IVY不是。我正在考虑将Maven约定(main/test java/resource)的所有项目标准化,以便可以将这些项目一致地包含在类路径中。就目前而言,我只做那些有资源目录的项目,这不是好的软件IMVHO。 再次感谢 – 2012-07-27 19:58:12