Flash Builder 4 внезапно перестает выполнять автозаполнение для некоторых классов - PullRequest
4 голосов
/ 29 апреля 2011

Проект, над которым мы работали в течение нескольких недель в Flash Builder, внезапно перестал быть ориентированным: все приятные функции Flash Builder, такие как автозаполнение, переход к определению, даже поиск по ссылкам, работают только частично - они работают для некоторых классов, но не для других. Я попытался перезапустить Flash Builder, закрыть и открыть проект, заново создать проект, но эта плохая ситуация сохраняется. Более того, это произошло примерно в одно и то же время с двумя другими разработчиками в одном проекте, каждый из которых имел несколько отличную конфигурацию. Возможно, мы превысили некоторый внутренний лимит FlashBuilder, но наш проект еще не настолько велик. Я не уверен, где я могу искать, чтобы устранить эту проблему.

Ответы [ 8 ]

3 голосов
/ 29 апреля 2011

Обычно Eclipse выключается и перезапускает решение проблемы для меня.Но вот еще несколько вещей, которые стоит попробовать:

  1. Поскольку это произошло на трех рабочих станциях на дискретном наборе классов, вы искали странную или нестандартную синтаксическую ошибку?Я уверен, что я встречал ситуации, когда что-то не будет вызывать ошибку компилятора, но приведет к поломке хинтинга кода.Я бы искал такие вещи, как одинарные кавычки внутри двойных кавычек или ASDocs, которые не заканчиваются должным образом.[Это кажется дико непоследовательным, так что это немного удар в темноте].
  2. Попробуйте почистить рабочее место.При запуске Flash Builder (или Eclipse) используйте аргумент «-clean».Я делаю это в ярлыке Windows;Я не уверен, как это сделать на Mac
  3. Попробуйте воссоздать рассматриваемый компонент.Медленно копируйте код по частям, пока не узнаете, что нарушает подсказки кода.
2 голосов
/ 29 апреля 2011

Это распространенная проблема в eclipse (Flash Builder).

Попробуйте увеличить доступную память для «кэширования типов» (я забыл конкретный термин).Вы можете сделать это, отредактировав файл FlashBuilder.ini в своем гибком доме, чтобы он выглядел примерно так:

-vmargs
-Xms64m
-Xmx1024m
-XX:MaxPermSize=1024m
-XX:PermSize=64m

(вычеркнуты несущественные параметры)

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

Возможно, вам не нужно больше 512 м на максимальном размере, но я работаю с особенно крупным проектом с большим количеством открытой библиотекизависимости ...

1 голос
/ 28 мая 2012

Ничто из этого не сработало для меня. Мое решение состоит в том, чтобы запустить текстовую фабрику в BBedit (я на Mac), которая заменяет каждую вкладку во всей моей кодовой базе четырьмя пробелами, а затем другую, которая делает обратное. Затем я обновляю свой проект в FB. Это изменение каждого файла, кажется, заставляет FB перестраивать его ссылки. Я должен делать это каждый раз, когда начинаю FB. Я уверен, что есть лучший способ добиться этого из командной строки (хотя unix 'touch' не работает).

1 голос
/ 13 сентября 2011

Удаление, затем повторное добавление проекта, казалось, исправило это для меня.

0 голосов
/ 20 марта 2015

Щелкните правой кнопкой мыши по классу и выберите «обновить», исправив эту проблему для меня:)

Я также заметил, что открывается странный второй класс, где подсказка кода не работает, когда вы нажимаете гиперссылку на этот класс из другого класса. Если дважды щелкнуть файл «Class.as» в дереве документов, он будет работать нормально. Очень странно

0 голосов
/ 20 апреля 2014

Это произошло, когда я добавил объявление модели в приложение MXML.Когда я это прокомментировал, автозаполнение снова заработало.

<fx:Model id="testTextFlow">
    <flow:TextFlow version='3.0.0' xmlns:flow='http://ns.adobe.com/textLayout/2008' fontSize='11' 
        textIndent='10' paragraphSpaceBefore='6' paddingTop='8' paddingLeft='8' paddingRight='8'>
        <flow:p paragraphSpaceBefore='inherit' clearFloats='start'>
        <flow:img source="http://imgs.xkcd.com/comics/trapped.png" width="600" height="300" float="right"/>
        <flow:span>Bacon ipsum. Permanent link to this comic: http://xkcd.com/876/ Image URL (for hotlinking/embedding): http://imgs.xkcd.com/comics/trapped.png</flow:span>
        <flow:TextFlow version='3.0.0' xmlns:flow='http://ns.adobe.com/textLayout/2008' fontSize='15'>  
        <flow:p paragraphSpaceBefore='inherit' >Here is an embedded text flow.</flow:p>
        </flow:TextFlow>
        </flow:p>
    </flow:TextFlow>
</fx:Model>
0 голосов
/ 02 марта 2012

У меня были те же проблемы, иногда даже автозаполнение кода зависало на пользовательских классах.

Я бы предложил вам попытаться удалить папку .codemodel из вашей рабочей области, см. Описания здесь: http://www.redcodelabs.com/2010/05/flash-builder-content-assist-did-not-complete-normally/

И позже, для повышения производительности вы можете выполнить следующие шаги: http://www.redcodelabs.com/2012/03/eclipse-speed-up-flashbuilder/

0 голосов
/ 02 марта 2012

Я получил значительное улучшение, включив «Включить режим проектирования»

...