Ошибка компиляции ASDoc в Flash Builder 4
Я не могу понять, почему я продолжаю получать эту ошибку каждый раз, когда пытаюсь скомпилировать ASDoc в Flash Builder 4.
Мне удалось в ASDoc создать папку вывода asdoc, но она не завершена. Есть только toplevel.xml и папка tempdita, которые отображаются.
Это ошибка, которая появляется на моей консоли
Ошибка в xsl: выберите в строке 46 processHTML.xslt: java.io.FileNotFoundException: /Users/NEWYORK/abritez/Documents/workspaces/ate/ATE_Shell/asdoc-output/index.tmp (нет такого файл или каталог) в xsl:apply-templates (файл:/Users/NEWYORK%5Cabritez/Documents/workspaces/ate/ATE_Shell/asdoc-output/tempdita/processHTML.xslt#25) обработка / html Преобразование не удалось: об ошибках во время выполнения
Строка 46 находится в ProcessHTML.xslt является начальной <xsl:choose>
в элементе ниже.
<xsl:template match="html">
<xsl:copy-of select="$noLiveDocs"/>
<xsl:choose>
<xsl:when test=".//frameset">
<xsl:copy-of select="$frameDocType"/>
</xsl:when>
<xsl:otherwise>
<xsl:copy-of select="$docType"/>
</xsl:otherwise>
</xsl:choose>
<xsl:choose>
<xsl:when test="$isLiveDocs"/>
<xsl:otherwise>
<xsl:value-of select="$markOfTheWeb"/>
</xsl:otherwise>
</xsl:choose>
<xsl:element name="html">
<xsl:apply-templates/>
<xsl:copy-of select="$copyrightComment"/>
<xsl:value-of select="$newline"/>
</xsl:element>
</xsl:template>
Я пошел в настройки внешнего инструмента и добавил местоположение asdoc
/ Приложения /Adobe Flash Builder 4/sdks/flex_sdk_4.1/bin/asdoc
Затем я добавил свой рабочий каталог
${Workspace_loc:/ATE_Shell}
И, наконец, я вставил все свои аргументы
-lenient -source-path src -doc-sources src -Внешняя библиотека-путь =/Users/NEWYORK\abritez/ Документы / рабочие / ель /ActivityToolkitLib/ бен /ActivityToolkitLib.swc -Внешняя библиотека-путь =/Users/NEWYORK\abritez/ Документы / рабочие / ель /ATE_Template/ бен /ATE_Template.swc -Внешняя библиотека-путь =/Users/NEWYORK\abritez/ Документы / рабочие / ель /AssesmentCommunicationLib/ бен /AssesmentCommunicationLib.swc -Внешняя библиотека-путь =/Users/NEWYORK\abritez/ Документы / рабочие / ель /BFW_UI/ бен /BFW_UI.swc -Внешняя библиотека-путь =/Users/NEWYORK\abritez/ Документы / рабочие / ель / DiagnosticReporter/ бен /DiagnosticReporter.swc
ОБНОВЛЕНИЕ: я закончил откат до 3.5 и сделал тестовое приложение только с одним методом для документирования и получил эту ошибку.
Мой метод
package com.test
{
import mx.containers.Canvas;
public class Grouptest extends Canvas
{
public function Grouptest()
{
super();
}
/**
* Hello
*
* @param value Some string
* */
public function set testMe(value:String):void
{
trace("value " + value)
}
}
}
Моя ошибка
Загрузка файла конфигурации / Приложения /Adobe Flash Builder 4/sdks/3.5.0/frameworks/flex-config.xml Adobe ASDoc Версия 3.5.0, сборка 12683 Авторское право (c) 2004-2007 Adobe Systems, Inc. Все права защищены. Ошибка: '' не является каталогом Используйте 'asdoc -help' для получения информации об использовании командной строки.
Любая помощь или указание в правильном направлении будет очень ценным. Я работал ASDoc в прошлом, поэтому я уверен, что я что-то упускаю.
3 ответа
Известно, что ASDoc плохо сообщает об ошибках и дает красную сельдь.
Следующее было подходящим для Flex 3. Я предполагаю, что это все еще подходит для Flex 4.
Главное, что нужно помнить, это то, что ASDoc делает только один проход, в отличие от компилятора, который делает (по крайней мере) два. Это выявляет проблемы, которые компилятор скрывает для вас, классически, если вы объявляете что-то как связываемое, но не делаете класс IEventDispatcher, компилятор обманывает вас при первом проходе, но ASDoc просто потерпит неудачу.
Другая распространенная проблема - файл не находит при использовании тегов, таких как @see. Если вы указали неверный путь, ASDoc использовал опрокидывание, а не генерирование.
Третья наиболее распространенная проблема в моем опыте - это неправильно сформированные HTML-теги. Забыв добавить
или добавление тегов HTML в теги ASDoc, которые их не принимают.К сожалению, поскольку ASDoc настолько плох в отчете об этих ошибках и не изящно обрабатывает ошибки, это королевский кошмар, чтобы найти, где проблема, не перебирая код построчно...
У меня была такая же проблема. Я наконец нашел случайный пост об этой же проблеме, и это исправило это для меня.
В другой раз чёрная дыра с поколением asdoc
[asdoc] [Fatal Error] toplevel.xml:90:2: содержимое элементов должно состоять из правильно сформированных символьных данных или разметки.
[asdoc] Ошибка: не удалось создать toplevel.xml: содержимое элементов должно состоять из правильно сформированных символьных данных или разметки.
Это вызвано случайным символом в ваших комментариях asdoc, который парсеру не нравится. В моем случае пара <или> вместе с @.
Я понимаю, что вы имеете дело с 4, но я столкнулся с той же проблемой с 3.5, поэтому может быть применимо следующее:
Это происходит из-за того, что папка asdocs и, что более важно, папка asdocs / templates не были включены в дистрибутив 3.5 Flex SDK. Просто скопируйте asdocs из 3.4 или другого 3.x SDK, и все заработает.
http://michael.omnicypher.com/2011/05/flex-35-and-using-asdocs.html