用Ant和Ivy解析javadoc文件
我想让Ivy同时获取log4j.jar和JavaDocs。现在,我已经走到了死胡同。如果我在我的ivy.xml中使用这个用Ant和Ivy解析javadoc文件,ant,ivy,ivyde,Ant,Ivy,Ivyde,我想让Ivy同时获取log4j.jar和JavaDocs。现在,我已经走到了死胡同。如果我在我的ivy.xml中使用这个 <dependency org="log4j" name="log4j" rev="1.2.16"/> <?xml version="1.0" encoding="UTF-8"?> <ivy-module version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema
<dependency org="log4j" name="log4j" rev="1.2.16"/>
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd">
<info organisation="foo" module="bar"/>
<dependencies>
<dependency org="log4j" name="log4j" rev="1.2.16">
<artifact name="log4j" type="jar" ext="jar"/>
<artifact name="log4j" type="javadoc" ext="jar"/>
</dependency>
</dependencies>
</ivy-module>
Maven示波器似乎有问题。但是我到底缺少什么呢?问题在于您在常春藤检索任务中使用的模式。它需要包括可选的“分类器”属性,以确保文件名是唯一的:
<ivy:retrieve pattern="lib/[conf]/[artifact](-[classifier]).[ext]"/>
分类器是Maven的东西,用于识别与Maven模块相关联的其他人工制品
补充观察
不需要复杂的常春藤设置。配置映射控制从其他模块下载哪些工件
删除ivysettings.xml文件,然后在ivy.xml中尝试以下操作:
<dependency org="log4j" name="log4j" rev="1.2.16" conf="default->master,javadoc"/>
这将导致下载以下文件:
- log4j-1.2.16.jar
- log4j-1.2.16-javadoc.jar
- 主:只主罐
- 编译:主jar,加上用于编译的jar(这也是“默认”范围)
- 运行时:主jar,加上用于编译的jar,运行时
- 测试:主jar,加上用于编译、运行时和测试的jar
- 来源
- javadoc
Buildfile: D:\workspace\foobar\build.xml
resolve:
[ivy:retrieve] :: Ivy 2.2.0 - 20100923230623 :: http://ant.apache.org/ivy/ ::
[ivy:retrieve] :: loading settings :: file = D:\workspace\foobar\ivysettings.xml
[ivy:retrieve] :: resolving dependencies :: foo#bar;working@myhost
[ivy:retrieve] confs: [default, compile, master, javadoc]
[ivy:retrieve] found log4j#log4j;1.2.16 in internal
[ivy:retrieve] found javax.servlet#servlet-api;2.5 in internal
[ivy:retrieve] found com.someother#proprietary-core;1.2.3 in internal
[ivy:retrieve] found com.someother#proprietary;1.2.3 in internal
[ivy:retrieve] found com.someother#scanner;1.0 in internal
[ivy:retrieve] :: resolution report :: resolve 332ms :: artifacts dl 10ms
---------------------------------------------------------------------
| | modules || artifacts |
| conf | number| search|dwnlded|evicted|| number|dwnlded|
---------------------------------------------------------------------
| default | 5 | 0 | 0 | 0 || 4 | 0 |
| compile | 4 | 0 | 0 | 0 || 4 | 0 |
| master | 4 | 0 | 0 | 0 || 4 | 0 |
| javadoc | 4 | 0 | 0 | 0 || 4 | 0 |
---------------------------------------------------------------------
[ivy:retrieve]
[ivy:retrieve] :: problems summary ::
[ivy:retrieve] :::: WARNINGS
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: UNRESOLVED DEPENDENCIES ::
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: log4j#log4j;1.2.16: configuration not found in log4j#log4j;1.2.16: 'master'. It was required from foo#bar;working@myhost default
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve]
[ivy:retrieve]
[ivy:retrieve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
<ivy:retrieve pattern="lib/[conf]/[artifact](-[classifier]).[ext]"/>
<dependency org="log4j" name="log4j" rev="1.2.16" conf="default->master,javadoc"/>