Я рассмотрел многочисленные опубликованные вопросы, связанные с этим, но, похоже, не может прийти к четкому решению. Я пытаюсь использовать emma для обеспечения покрытия кода для приложения и robotium в качестве единицы тестирования. Внешний dropbox.jar находится в пути сборки в eclipse.Добавление внешнего файла Jar в сборку муравей в скрипте Bash
Приложение и тестовые примеры успешно выполняются в Eclipse, однако при запуске скрипта ant не может найти зависимости dropbox.jar. Ниже мой сценарий, а затем раздел журнала из муравьиного вызова
#!/bin/bash
#Code Coverage Script:
#(android:command not found error)
export ANDROID_HOME=/Users/Deverick/android-skds
export JAVA_HOME=/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
export PATH=$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:/Users/Deverick/Documents/workspace/Diary-Test/libs/dropbox-android-sdk-1.6.1:$PATH
echo $PATH
cd ~/Documents/workspace/
cd Diary
ant clean
cd ..
cd Diary-Test
ant clean
cd ..
android update project --path ./ --name Diary --target android-16 --subprojects
cd Diary-Test
android update test-project --main ../Diary --path ./
ant emma debug install
ant emma debug install test
Вход Выход:
-code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] No AIDL files to compile.
[echo] ----------
[echo] Handling RenderScript files...
[echo] ----------
[echo] Handling Resources...
[aapt] Generating resource IDs...
[echo] ----------
[echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class.
-pre-compile:
-compile:
[javac] Compiling 4 source files to /Users/Deverick/Documents/workspace/Diary/bin/classes
[javac] /Users/Deverick/Documents/workspace/Diary/src/jpf/android/diary/Diary.java:2: warning: unmappable character for encoding UTF-8
[javac] // Copyright ? 2012 Josep Portella Florit <[email protected]>
[javac] ^
[javac] /Users/Deverick/Documents/workspace/Diary/src/jpf/android/diary/Diary.java:39: package com.dropbox.client2 does not exist
[javac] import com.dropbox.client2.DropboxAPI;
[javac] ^
[javac] /Users/Deverick/Documents/workspace/Diary/src/jpf/android/diary/Diary.java:40: package com.dropbox.client2.android does not exist
[javac] import com.dropbox.client2.android.AndroidAuthSession;
Как я могу идти о добавлении этого .jar путь к сценарию, так это рассматривается как зависимость? Я видел некоторые ссылки на $ CLASSPATH. Большинство вопросов, связанных с этим, использовали файл build.xml для добавления зависимостей, однако скрипт каждый раз очищает файл build.xml. Любое разъяснение очень ценится!