Не удается разрешить com.google.caliper.BeforeExperiment

Я git clone souce code с code.google.com, когда я устанавливаю тест модуля guava-tests в качестве корня источника maven, но это также ошибка, как ее решить? см. изображение
следуйте совету Фрэнка, я меняю на bechmark, созданный как "Test Source Root",
но отображение идеи не может разрешить символ BeforeExperiment, но в моем .m2 / репозитории есть jar. см. первый снимок экрана
. введите описание изображения здесь введите описание изображения здесь  введите описание изображения здесь

когда я выполняю, результат ниже, он пуст.

caliper  jar tf 1.0-beta-1/caliper-1.0-beta-1.jar|grep -E com.google.caliper.BeforeExperiment |sort
caliper  jar tf 0.5-rc1/caliper-0.5-rc1.jar|grep -E com.google.caliper.BeforeExperiment |sort
caliper  jar tf 1.0-beta-1/caliper-1.0-beta-1.jar|grep -E com.google.caliper.BeforeExperiment |sort

person fuyou001    schedule 19.08.2013    source источник
comment
Опубликуйте полное и точное сообщение об ошибке в виде текста. Я даже не могу понять, о какой ошибке вы говорите на своей картинке.   -  person JB Nizet    schedule 19.08.2013
comment
На втором снимке экрана у корневого пакета (com) есть синий значок папки, что означает, что вы установили его в качестве исходного корня, когда его родительская папка (benchmark) уже установлена ​​(правильно) в качестве исходного корня. Щелкните правой кнопкой мыши com, Пометить каталог как / Снять отметку как корень источника.   -  person Frank Pavageau    schedule 19.08.2013
comment
На самом деле benchmark следует пометить как тестовый корень исходного кода, а не как корневой корень исходного кода.   -  person Frank Pavageau    schedule 19.08.2013
comment
@FrankPavageau Я меняю на bechmark, созданный как тестовый исходный корень   -  person fuyou001    schedule 19.08.2013


Ответы (2)


Каталог guava-tests/benchmark в настоящее время не установлен в качестве исходного корня в конфигурации Maven, потому что он не будет компилироваться. Тем не менее, нам просто нужно отправить новую версию Caliper в Maven Central, которая включает новые аннотации и тому подобное, и я думаю, что это должно произойти в ближайшее время.

person ColinD    schedule 20.08.2013

Ни одна общедоступная версия Caliper не содержит класса com.google.caliper.BeforeExperiment.

Вы можете сравнить результаты следующих поисков на сайте search.maven.org:

Вы также можете проверить, что у вас в банке:

$ jar tf ~/.m2/repository/com/google/caliper/caliper/0.5-rc1/caliper-0.5-rc1.jar | \
    grep -E com.google.caliper.B | sort
com/google/caliper/Benchmark.class
$

Или используя самую последнюю «версию» Caliper:

$ jar tf caliper-1.0-beta-1.jar | grep -E com.google.caliper.B | sort
com/google/caliper/Benchmark.class
$
person Frank Pavageau    schedule 19.08.2013
comment
когда я запускаю оболочку. не могу найти BeforeExperiment. как решить это - person fuyou001; 20.08.2013
comment
Вот моя точка зрения: ты не можешь. Google не выпустил версию Caliper с этим классом, тесты используются внутри компании и не могут быть построены с помощью общедоступных инструментов и библиотек. - person Frank Pavageau; 20.08.2013
comment
Это не совсем так .... он не выпущен, но уже находится в репозитории git: commit 439ca07, 2013-06-21. - person maaartinus; 20.08.2013
comment
@maaartinus мой плохой, я не проверял доступный код для Caliper. Я думаю, что пошаговый ответ по настройке необходимой среды (с локальными изменениями в Guava pom.xml) немного выходит за рамки SO, хотя ... - person Frank Pavageau; 20.08.2013
comment
Не знаю, как это сделать с Maven и т. Д .; это может усложниться. В Eclipse я просто создал отдельный проект и добавил его в Java Build Path. - person maaartinus; 20.08.2013
comment
@maaartinus, не могли бы вы дать мне репозиторий git. Спасибо! - person fuyou001; 22.08.2013
comment
@ fuyou001: Я не могу, потому что это не мое. : D Но это бесплатно: git clone https://code.google.com/p/caliper/, см. здесь. - person maaartinus; 25.08.2013