Как удалить отладочную информацию в своем файле.class (используя xtend 2.x)
Я заметил, что когда я обновил xtend с 1.20 до 2.0, файл.class значительно больше. Одно отличие, которое я увидел, состоит в том, что в файлах.class есть отладочная информация, которая меня не особо волнует. Существует также дополнительная запись в файле.class, которая называется SMAP.
Я использую MWE2 Workflow для создания файлов.class. Есть ли способ отключить это?
2 ответа
Xtend 2.x скомпилирован в исходный код Java, где Xtend 1.x был интерпретируемым языком. Преимущество компиляции на Java заключается в значительном улучшении производительности во время выполнения и в кажущейся интеграции с другими языками JVM. Чтобы разрешить отладку Xtend, информация SMAP также устанавливается в байт-код. При этом вы можете выбрать, хотите ли вы отлаживать сгенерированные исходники Java или непосредственно код Xtend. Если вы по какой-то причине сосредотачиваетесь на файлах меньшего класса, вы можете установить Xtend в качестве первоисточника. Это удалит отладочную информацию Java и сохранит лишь небольшую часть отладочной информации Xtend. Вы также можете удалить все синтетические локальные переменные из файлов классов. Проверьте настройки компилятора Eclipse в разделе Xtend -> compiler
,
Вы можете скомпилировать с Javac's -g:none
параметр для генерации отладочной информации. Это также должно предотвратить создание исходной карты.