Eclipse (Juno) останавливается при открытии большого файла Java?

У меня есть довольно большой файл Java-заглушки. Он имеет 225 000 строк, потому что заглушка имеет много классов, а API сложный.

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

Я увеличил память в eclipse.ini до 1024 м, и теперь он не сообщает о проблемах с памятью, но все еще невыносимо медленный.

Что делать, чтобы Eclipse не захлебнулся этим большим Java-файлом?


person Danijel    schedule 23.07.2013    source источник
comment
Обычно я предлагаю разделить файл на разные файлы. Кроме того, у Eclipse Juno были некоторые проблемы с производительностью, которые, похоже, были исправлены в kepler. Но даже в этом случае 255000 строк могут оказаться слишком большими.   -  person Axel    schedule 23.07.2013
comment
Почему у вас такой большой файл Java? Я предлагаю выделить все внутренние классы в этом файле в отдельные файлы внешних классов, организованные в пакеты. Вы можете использовать UltraEdit, чтобы открыть большой файл, а затем извлечь внутренние классы. Наконец, просто добавьте операторы импорта в основной класс (если только вы не помещаете извлеченные классы в тот же пакет, что и основной), и все будет работать нормально.   -  person ADTC    schedule 23.07.2013
comment
Это сгенерированный файл-заглушка wsdl, могу ли я как-то разделить его на отдельные классы/файлы?   -  person Danijel    schedule 23.07.2013
comment
Обновление до Kepler может немного помочь, так как у Juno были проблемы даже с файлами меньшего размера.   -  person Axel    schedule 24.07.2013


Ответы (1)


Так как вы уже увеличили память в eclipse ini до 1024Mb. Вы можете попробовать это:

Пока у вас открыто eclipse, перейдите к настройкам, щелкните раздел Java, щелкните «Установленные JRE», щелкните JRE, нажмите кнопку «Изменить» и вставьте это в аргументы виртуальной машины по умолчанию:

-Xms256M -Xmx512M 

Это очень похоже на то, что вы сделали с файлом .ini. Здесь Xms — минимальное пространство, а Xmx — максимальное пространство. Вот источник, откуда я получил информацию. Источник

person Pradit    schedule 23.07.2013