2009-10-22 2 views
0

My ant buildfiles сообщает mxmlc.jar перекомпилировать целевой источник mxml. Однако, если исходный файл целевой mxml не изменился, либо ant, либо mxmlc игнорируют файл и не будут создавать новый swf. Это досада, потому что я редактирую файлы, импортированные целевым mxml. Мне нужно его восстановить, когда эти файлы будут изменены. Я предполагаю, что mxmlc создает где-то файл кэша и сравнивает целевой mxml (или, может быть, просто хэш). Это то, что происходит? Какая стандартная работа? На данный момент я редактирую целевой файл mxml только для того, чтобы вызвать изменение файла.Создает ли mxmlc Flex SDK файл кэша или хеш, чтобы определить, изменился ли исходный код?

ответ

1

Создает ли файл xxmlc или файл кеша SD SDK, чтобы определить, изменился ли исходный код?

Все, что необходимо знать, если файл был изменен или нет, - это посмотреть на время последней модификации.

Мне нужно его восстановить, когда эти файлы будут изменены. Я предполагаю, что mxmlc создает где-то файл кэша и сравнивает целевой mxml (или, может быть, просто хэш).

Чистая сборка должна работать нормально, если это не слишком дорого.

+0

Итак, ты говоришь, что mxmlc.jar компилятор хранит время модификации источника целевого MXML где-то , Если я знаю, где находится этот файл, или файлы кэша/хэша, которые, как я предполагал, он создает. Я могу дать указание муравьям стереть эти файлы перед вызовом mxmlc.jar и, таким образом, вручную вызвать чистую сборку. Я предполагаю, что Flex Builder делает что-то подобное, когда ему говорят сделать чистую сборку. Может быть, я здесь. Я не могу думать о другом способе, которым mxmlc.jar (в flex sdk) знал бы, как игнорировать неизменный источник. – 2009-10-23 16:33:17

+1

Не нужно хранить эту информацию. Простой stat в файле скажет вам об этом. – dirkgently

1

Да, гибкие SDK создают файл кэша для скомпилированного байтового кода для каждого компонента.

Вот ссылка на LiveDocs ссылку относительно кэш-файл

http://livedocs.adobe.com/flex/3/html/compilers_20.html#153980

Как отмечает: «Один из способов заставить полной перекомпиляции, чтобы удалить файл кэша из каталога.»

Итак, да, вы можете удалить кеш, чтобы принудительно перекомпилировать все файлы.
Вы также можете просто сделать «чистую» компилировать Вы также можете просто установить параметр компилятора -incremental = ложь