我已经安装了 ant...并且安装了 ivy (均来自 synaptic),但是 ant 找不到 ivy!
当我运行 ant 来构建时‘十月国际象棋引擎’我得到以下信息:
BUILD FAILED
/home/zeigfreid/repos/october-chess-engine/build.xml:32: Problem: failed to create task or type antlib:org.apache.ivy.ant:resolve
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have taken place.
No types or tasks have been defined in this namespace yet
This appears to be an antlib declaration.
Action: Check that the implementing library exists in one of:
-/usr/share/ant/lib
-/home/zeigfreid/.ant/lib
-a directory added on the command line with the -lib argument
我不知道该怎么做!我签出了这个问题,但它没有解决我的问题。
谢谢,
答案1
你是如何安装 ivy 的?无论如何,你需要将 ivy.jar(来自http://ant.apache.org/ivy/download.html)在任何列出的目录中
/usr/share/ant/lib
${HOME}/.ant/lib
(就你的情况而言/home/zeigfreid/.ant/lib
)
-v
如果使用选项 (verbose)执行,您可以检查正在加载的内容
答案2
这似乎是一个常见问题,因为我也遇到了同样的问题。安装后常春藤使用apt-get
,它没有出现在所需的文件夹中,而是出现在:
[...] /usr/share/doc/ivy /usr/share/doc/ivy/自述文件 /usr/share/doc/ivy/README.Debian /usr/share/doc/ivy/changelog.Debian.gz /usr/share/doc/ivy/changelog.gz /usr/share/doc/ivy/版权 /usr/share/java/ivy-2.2.0.jar ivy.jar 目录 [...]
(您可能必须使用 更新您的 mlocate 数据库
updatedb
,然后使用
locate ivy
它来找到它。)
要解决此问题:在/usr/share/ant/lib/
sudo ln -s -T /usr/share/java/ivy.jar /usr/share/ant/lib/ivy.jar
请注意,这/usr/share/java/ivy.jar
本身就是一个链接。
答案3
我发现让 ant 安装 ivy 非常有用,请参阅自动安装。
这样,唯一的操作系统依赖项就是 ant,并且不需要添加像 ANT_OPTS 或 classpath 这样的额外配置。