2012-04-21 2 views
0

Я пытаюсь использовать инструмент покрытия Emma с Eclipse, но я немного смущен.Запуск Emma с Eclipse на Ubuntu

Поэтому я добавил emma.jar и emma_ant.jar в каталог/usr/lib/jvm/java-6-openjdk-common/jre/lib/ext/emma/и создал Java-проект под Eclipse, используя JRE: java -6-openjdk

Я скопировал файл примера build.xml в свой проект и отредактировал свойство emma.dir в/usr/lib/jvm/java-6-openjdk-common/jre/lib/ext/emma/

Затем, когда я создаю файл .jar, и попробуйте запустить его с Эммой:

java emmarun -jar HelloWorld.jar

я получаю это:

Exception in thread "main" java.lang.NoClassDefFoundError: emmarun Caused by: java.lang.ClassNotFoundException: emmarun at java.net.URLClassLoader$1.run(URLClassLoader.java:217) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:205) at java.lang.ClassLoader.loadClass(ClassLoader.java:321) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) at java.lang.ClassLoader.loadClass(ClassLoader.java:266) Could not find the main class: emmarun. Program will exit.

Благодарим за помощь!

ответ

0

Вы делаете это с трудом. Установите плагин EclEmma, и вам просто нужно выбрать правильную конфигурацию запуска, чтобы получить тестовое покрытие.

Обновление: Я только понял, что EclEmma использует JaCoCo внутренне, и уже не Эмма. Тем не менее, это отличный инструмент, но я бы пошел с ним.

Но для решения вашей проблемы: я не думаю, что вы можете иметь подпапки в lib/ext. Переместите кувшин прямо внутри lib/ext, и он должен работать.

+0

Я пытаюсь переместить банку непосредственно внутри lib/ext, но я все равно получаю ту же ошибку. – kdelemme

+0

Найдите ответ! Правильной командой является java -cp /path/to/emma.jar emmarun [OPTION] -jar yourown.jar – kdelemme

0

Просто установите ecl-emma через центр установки eclipse!

Перейти на Справка -> Установка программного обеспечения, вставьте туда страницу ECL-EMMA:

http://update.eclemma.org/ 

И пройти через помощника по установке.