让Ivy不要包含测试依赖项
发布时间:2020-12-14 04:53:13 所属栏目:百科 来源:网络整理
导读:考虑如下的ivy.xml: ivy-module version="2.0" info organisation="com.foo" module="FooBar" / dependencies dependency org="net.sf.ehcache" name="ehcache-core" rev="2.2.0" / !--...-- /dependencies /info/ivy-module 当我运行Ivy时,它会获取EHCache
考虑如下的ivy.xml:
<ivy-module version="2.0"> <info organisation="com.foo" module="FooBar" /> <dependencies> <dependency org="net.sf.ehcache" name="ehcache-core" rev="2.2.0" /> <!--...--> </dependencies> </info> </ivy-module> 当我运行Ivy时,它会获取EHCache的所有依赖项,甚至可以测试依赖项.具体来说,它试图引入Hibernate 3.5.1(在POM文件中,它被列为“测试”依赖项). 如何防止Ivy包含测试依赖项?我可以将它列为排除依赖项,但我不想为每个测试依赖项执行此操作.我是Ivy的新手,习惯了Maven做事的方式.我正在阅读有关配置但我不明白Maven的“范围”的这个方面如何映射到“配置”. 解决方法
您需要定义依赖项的配置,如:
<dependency org="net.sf.ehcache" name="ehcache-core" rev="2.2.0" conf="compile"/> 如果省略conf,则假定您的意思是conf =“*”,它将下载该依赖项的所有配置. 这是一个简单的例子: <configurations> <conf name="test" visibility="public" /> <conf name="compile" visibility="public" /> </configurations> <publications> <artifact name="${project.name}" type="jar" conf="compile" ext="jar"/> <artifact name="${project.name}-test" type="jar" conf="test" ext="jar"/> </publications> <dependencies> <!-- COMPILE --> <dependency org="log4j" name="log4j" rev="1.2.14" conf="compile->*"/> <dependency org="apache" name="commons-net" rev="2.0" conf="compile->*"/> <dependency org="itext" name="itext" rev="1.4.6" conf="compile->*"/> <dependency org="jsch" name="jsch" rev="0.1.29" conf="test->*"/> <!-- TEST --> </dependencies> 在这个例子中,jsch将包含在测试和编译配置中. 如果稍后使用conf =“compile”解决此依赖关系,您将获得除jsch之外的所有依赖项. 如果测试会扩展编译,你会获得所有的jar. <configurations> <conf name="test" visibility="public" extends="compile" /> <conf name="compile" visibility="public" /> </configurations> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 30.Oracle深度学习笔记——RAC常用命令
- 在iPhone开发人员的System.keychain和login.keychain之间模
- 设计模式--6大原则--里氏置换原则
- applicationContext.xml和SpringMVC的区别
- 浅谈如何使用swfupload工具及其与struts2无缝相接
- 表达 – 对Heroku的Create-React-App部署失败了`react-scri
- postgresql – 重启vm后无法访问数据库
- 如何让WKWebView在swift和macOS App中工作
- nosql – 大规模数据处理Hbase vs Cassandra
- ruby-on-rails – 用于文本比较的Ruby gem