我正在處理一些由其他開發人員創建的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