Ускорение разрешения зависимости Грааля - PullRequest
8 голосов
/ 19 мая 2010

В настоящее время мы работаем над приложением с относительно большим количеством внешних зависимостей, поскольку мы интегрируемся с довольно сложной существующей системой.

Зависимости работают просто отлично, однако для разрешения зависимостей все еще требуется несколько минут, независимо от того, находятся ли зависимости уже в кэше Ivy. Если кэш нуждается в обновлении, конечно, это займет еще больше времени.

Есть ли способ ускорить этот процесс или отключить разрешение зависимостей при каждом запуске? Теперь это становится огромным снижением производительности.

Спасибо!

Ответы [ 3 ]

2 голосов
/ 05 августа 2010

Может быть, это немного сложно, но я бы сделал следующее

  1. Используйте элемент enviroment в config dsl, чтобы добавить разрешение зависимости только в тестовом режиме, см. [Здесь] [1]
  2. Поместите все ваши файлы зависимостей в lib forlder вашего приложения grails. Я бы сделал это с помощью зависимости maven: copy.Я думаю, что это можно сделать и в ivy
  3. Добавить файл jar в список scm-ignore
  4. Использовать систему сборки CI для проверки правильности разрешения зависимостей

    [1]: http://www.grails.org/doc/1.3.x/guide/3.%20Configuration.html#3.2 Среды

1 голос
/ 11 января 2013

попробуйте использовать переключатель --offline. это позволит избежать удаленных репозиториев и выполнять поиск только в файловой системе (т. е. в локальном репозитории Maven). Вам нужно только вернуться в онлайн, когда добавляются новые зависимости.

0 голосов
/ 19 мая 2010

Я не думаю, что есть хороший способ обойти время, необходимое для разрешения зависимостей; Насколько я понимаю, в Grails было принято конкретное решение - разрешать зависимости во время запуска, чтобы приложение не загружало зависимости во время выполнения.

Вы можете обойти это в режиме разработки, по крайней мере, просто оставив приложение Grails запущенным и оперативно развернув любые изменения - если вы используете одну из последних версий Grails со встроенным сервером Tomcat, это работает очень хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...