Повлияет ли на производительность компиляции очень большое количество jar / классов в пути классов? - PullRequest
0 голосов
/ 29 июня 2011

Я программно использую Apache Ant API для компиляции большого количества файлов .java.В classpath очень большое количество JARS-файлов и несколько тысяч .class-файлов.

Производительность намного ниже ожидаемой.Может ли большой классный путь быть ответственным за это, или я должен смотреть на другие факторы?

1 Ответ

1 голос
/ 29 июня 2011

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

Самым большим узким местом при выполнении сборки обычно является доступ к диску.Наличие большого количества jar-файлов может увеличить объем работы, которую вам необходимо выполнить, но это имеет примерно такое же значение, как добавление другого класса для компиляции.

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

Запуск большего количества приложений во время экономии может уменьшить объем свободной памяти.

...