Просмотр полной версии : Изменяется размер swf при перекомпиляции Flex-проекта!?
MedvedevA
12.10.2009, 19:55
Когда перекомпилирую исходники Flex-проекта изменяется размер swf-файла. На пару байтов. Очень не удобно при работе с SVN. Исходники при этом не меняю. Он что в файл дату засовывает?
Подскажите это так задумана или я тормажу? Не как нельзя отключить?
Во Flash такого вроде бы не было.
А зачем делать чек-ин бинарникам?
Проблема в инкрементальной компиляции, если стоит -incremental=true, то классы ресурсов будут получать всякие "некрасивые" имена типа _my_image_location_on_disk_0123456789_image_jpeg или что-то в этом духе, цифра в названии - то ли дата, то ли айди то ли и то и другое, но вобщем, она меняется от компиляции к компиляции.
Если вы отключите -incremental то компилировать будет очень долго...
Но самое правильное - не пихайте бинарники в СВН, там им все равно делать нечего.
MedvedevA
13.10.2009, 12:25
А зачем делать чек-ин бинарникам?
Проблема в инкрементальной компиляции, если стоит -incremental=true, то классы ресурсов будут получать всякие "некрасивые" имена типа _my_image_location_on_disk_0123456789_image_jpeg или что-то в этом духе, цифра в названии - то ли дата, то ли айди то ли и то и другое, но вобщем, она меняется от компиляции к компиляции.
Если вы отключите -incremental то компилировать будет очень долго...
Но самое правильное - не пихайте бинарники в СВН, там им все равно делать нечего.
А как отключить?
В свойствах проекта во вкладке Flex compiler в поле "Additional Compiler arguments" введено сейчас у меня "-locale en_US -incremental=false".
Всё равно меняет размер.
Ну, для начала скомпилируйте с -dump-config и посмотрите а поменялась ли настройка вообще, если да - то может быть проблема в чем-то другом. А, да, и еще флекс записывает в SWF таг #41 - это похоже какой-то timestamp или что-то в этом духе. На сколько я понимаю, в релиз билде его нету, ну, или не должно быть. Ну, в принципе его можно найти и удалить, если, например, принципиально важно получить одинаковую проверечную сумму для нескольких компиляций.
Но, еще раз, самое правильное - не делайте чек-ин бинарникам, это глупо и никому не нужно.
MedvedevA
13.10.2009, 14:49
Ну, для начала скомпилируйте с -dump-config и посмотрите а поменялась ли настройка вообще, если да - то может быть проблема в чем-то другом. А, да, и еще флекс записывает в SWF таг #41 - это похоже какой-то timestamp или что-то в этом духе. На сколько я понимаю, в релиз билде его нету, ну, или не должно быть. Ну, в принципе его можно найти и удалить, если, например, принципиально важно получить одинаковую проверечную сумму для нескольких компиляций.
Но, еще раз, самое правильное - не делайте чек-ин бинарникам, это глупо и никому не нужно.
Спасибо за подсказки.
Нужно убрать подключение картинок?
<mx:Button toolTip="Добавление" icon="@Embed(source='plus3.png')" width="23" height="23" x="65" y="10" click="initAddElement();" id="add_btn_1"/>
А как их подключать?
Ну, я не знаю, я себя глупо чувствую пытаясь чего-то вам в этом отношении посоветовать. Не кладите SWF в репозитори - просто ну не должен он быть под контролем версий. Если вам нужны одинаковые проверочные суммы - компилируйте релиз билд. Дебаг билд в целом для этого не предназначен.
MedvedevA
14.10.2009, 14:14
Если вам нужны одинаковые проверочные суммы - компилируйте релиз билд. Дебаг билд в целом для этого не предназначен.
Похоже что всё таки меняет файл(релиз билд). Не знаю почему только. Ну и ладно.
Создал пробный Flex-проект с одним файлом и элементрарным кодом.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Button x="236" y="227" label="Button"/>
</mx:Application>
Перекомпиливаю его кнопкой "Export Release Build". Из папки bin-release достаю файл swf после каждой компиляции и сравниваю с предыдущим Total Commander=>Файл изменяется.
Размер файла всегда меняется в пределах 3-4 байт, независимо от release и incremental. Видимо, там всё-таки есть дата или что-то подобное.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.