我正在处理一些由其他开发人员创建的Android代码,并且他们要求我对它运行代码覆盖度度量。它是Android 2.3.3,他们使用ant来构建它们的文件。我在Ubuntu上运行,而其他开发人员在Windows/Mac上运行。Android,emma,ant和与蚂蚁相关的错误
如果我单独离开SDK/tools/lib/ant/main_rules.xml文件,就会发现emma的sourceforge页面描述的错误:无法找到类com.vladium.emma.emmajavaTask所需的类:组织/阿帕奇/工具/蚂蚁/任务定义/ Java”的
这显然是通过具有lib目录中都emma_ant.jar和emma.jar造成的。不用说,有emma_device.jar只字不提。
如果我注释掉寻找emma.jar的那一行,我可以建立这个项目,但是当创建一个测试项目来获取测试代码时,运行“ant coverage”返回
Problem: failed to create task or type emma
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.
这让我陷入困境。它似乎在寻找emma_properties.config文件,但似乎只在emma.jar中被注释掉了......
我觉得自己在圈子里并没有完成任何事情。任何帮助表示赞赏。
Diego, 我很忠实地阅读你的博客,我正在等你的书。我的问题是双重的:1.“环境”意味着在.bashrc中设置变量,对吗? 2.你在说什么“制造”命令?虽然我以前使用Eclipse自动构建了一些东西,但我无法在此使用它。我对Java基础结构知之甚少,不知道make是javac还是其他的东西。 – Kevin 2011-06-09 15:57:06
蚂蚁的覆盖通常会给我一些令人讨厌的编译错误,但是这些错误并没有使用完全相同的源代码和make。但你的里程可能会有所不同 – 2011-06-09 20:03:42
Make是一个构建工具[http://en.wikipedia.org/wiki/Make_(software)] – 2011-06-09 20:04:27