-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Запуск в режиме формирования строк к покрытию не должен зависеть от наличия EDT #122
Comments
Поправка на то , что нужные jarrники можно подложить и без установки едт. ИМХО лучше всегда подкладывать их, независимо от установки едт |
на мой вкус кейс @yukon39 действительно имеет место быть. классы же загружаются лениво, вполне можно поддержать такой сценарий работы с runtime-зависимостями |
@nixel2007 приму в дар что нить, что бы понять о чем ты =) если оно после этого ещё и билдиться на га начнет, будет двойной профит |
@asosnoviy Или как вариант отдельный jar-ник для подсчета строк покрытию. |
@asosnoviy помнишь, как в entity идет динамическая загрузка sql-коннекторов в зависимости от окружения? когда в одной реализации коннектора используется библиотека Классы загружаются в оперативную память и инициализируются класс-лоадером только в том случае, если они явно запрошены. В обратном случае они просто валяются в виде class-файла в жарнике и еды не просят.
Я не смотрел реализацию cli-диспатчинга в coverage41c, но думаю, что не составит труда заменить прямые импорты реализаций подкоманд на загрузку нужных классов через рефлексию. Таким образом классы снятия замера, которые зависят от библиотек едт, будут загружаться только в том случае, если указана команда по работе с замерами. А в случае получения строк к покрытию управление будет уходить на классы без прямых импортов edt. Для удобства и надежности можно ввести промежуточные интерфейсы, чтобы методы классов подкоманд дергать не через рефлексию и method.invoke(), а через обычный вызов методов после явного каста полученного инстанса лениво загруженного класса к нужному интерфейсу. Можно конечно вместо классов подкоманд перевести на ленивую загрузку классы едт, но уверен, что это будет намного более трудоемко и менее удобно. |
@nixel2007 Огромное Спасибо! |
При запуске в режиме формирования строк к покрытию, не должны проверятся/подгружаться модули EDT.
Сейчас если не установлена EDT (нужны для сбора покрытия), то нет возможности отдельно получать расчет строк к покрытию.
The text was updated successfully, but these errors were encountered: