سؤال

يتعلق هذا السؤال باستخدام ASDOC لإنشاء وثائق من AS3. أنا لا أقوم بذلك من المرنة أو أي شيء، فقط باستخدام سطر الأوامر، وعلى الرغم من أن كل شيء يعمل بشكل جيد ولا يعيد ASDOC أي أخطاء، إلا أن بعض الروابط في الوثائق الناتجة مكسورة.

على وجه التحديد، في جميع الأماكن التي توجد فيها روابط خصائص أو طرق في أجزاء أخرى من الوثائق (بما في ذلك في نفس الفصل)، فإن الرابط يناسب مضاعفة المجلد المقابل للحزمة.

على سبيل المثال، أقول أنا توثيق myPackage.MyClass. وبعد إذا MyClass لديه ممتلكات تسمى MyProperty, وفي مكان ما في مستنداتي أدرج خطا مثل هذا:

@see #MyProperty

ثم يتم تحليل المستندات بشكل صحيح و "انظر أيضا:" يتم إنشاء رابط بشكل صحيح، لكنه ينتهي الأمر

.../output_directory/myPackage/myPackage/MyClass.html#MyProperty

حيث بالطبع، في نظام الملفات الفعلية هناك واحد فقط myPackage مجلد.

يبدو أن الجزء ذو الصلة من أمري ASDOC يشبه هذا:

asdoc
 -source-path .
 -doc-sources myPackage
 -output D:\dev\repository\docs\myPackage_docs
 -external-library-path "C:\Progra~1\Adobe\flex_sdk_3\frameworks\libs\player\10\playerglobal.swc"

أنا ربما فقد بعض حجة ASDOC التي من شأنها تحديد عنوان URL الأساسي للروابط، أو شيء ما على طول هذه الخطوط؟ إذا كان هذا خطأ عادي، فسيكون ذلك واضحا بالنسبة للكثيرين، لكن لا يمكنني العثور على أي نتائج جوجل للمشكلة، بحيث تكون فرضية العمل الخاصة بي هي أنه لا يحدث للأشخاص الذين يقومون بتشغيل ASDOC من فليكس، وربما بسبب بعض الإعداد الأول لقد حذفت.

شكرا على اي مساعدة!


على اقتراح TypeoneError، جربت أنواع مختلفة من روابط ESEE. لقد وجدت أن هذه العمل غرامة:

  • @see some.package
  • @see ClassName
  • @see ClassName#property

في حين أن هذه لا تعمل:

  • @see #property
  • @see full.package.ClassName
  • @see full.package.ClassName#property

ما هو أسوأ بعض الشيء، على الرغم من أن جميع الروابط الملاحية تعمل، يحدث نفس المسار المضاعف في ارتباطات النوع التي تم إنشاؤها تلقائيا. على سبيل المثال، حيث يوضح توقيع كل طريقة، عندما ترجع الأسلوب فئة في الوثائق، يتم كسر هذا الارتباط.

ألقيت أيضا بإلقاء نظرة على HTML، ووجدت أن المشكلة لا يبدو أنها مع عنوان URL الأساسي في الصفحة أو أي شيء، فهذه روابط غير متناسقة. لذلك على التوالي من التوالي @see الروابط، بعض منهم يربطون ClassName.html وبعض الرابط ل package/ClassName.html, ، بموجب القواعد الموضحة أعلاه. كل هذا، بالمناسبة، صحيح بغض النظر عما إذا كانت الصفحات ينظر إليها في إطارات أم لا.

مزيد من المعلومات إذا كنت تعرف أي شيء، ولكن أفكار الحلزون هي موضع ترحيب.


تحديث: بضعة تفاصيل أخرى: لست متأكدا من إصدار SDK الخاص بي بالضبط، إلا أنه يرافقه Flex 3، ولكن إذا قمت بتشغيل ASDOC بدون حجج، فإن تقاريرها: Adobe ASDoc Version 3.3.0 build 4852. وبعد أقوم بتشغيل كل شيء على نظام التشغيل Windows XP، من ملف دفعي وضعت في دليل ClassPath.


الحل الجزئي: تم حل إحدى مشكلاتي باستثناءها من خلال الترقية إلى الإصدار 4.0.0.7219 الإصدار التجريبي من SDK Flex 4 SDK (واستخدام ASDOC الموزعة فيه). الآن، كل ما عندي @see العلامات تعمل كما هو متوقع. المشكلة الوحيدة المتبقية هي أنه، أينما لدي طريقة ترجع فئة هي جزء من وثائقي، فإن ASDOC ببساطة Mangelles الرابط. على سبيل المثال، إذا كان لدي طريقة توقيعها ClassA#getB():ClassB, ، إذن، حيث يتم عرضها في المستندات، وصلات النص "Classb" إلى "Packagename: ClassB.html" بدلا من "packagename / classb.html". هذا يبدو أن يكون خطأ بسيط. بليس.

هل كانت مفيدة؟

المحلول

ASDOC محبط لا نهاية. هل حاولت إضافة اسم الحزمة / الفصل الكامل بشكل صريح إلى ESE، أي:

@see myPackage.myClass#MyProperty

لمعرفة ما إذا كان هذا يحدث فرقا؟

يحرر

ركضت بعض الاختبارات بناء على النتائج الخاصة بك وعلامة الملكية الداخلية تعمل بالنسبة لي. بمعنى آخر

@ ssee #_dispatcher.

الروابط مباشرة إلى تلك الخاصية في الصفحة (بدون مجلد فرعي مزدوج). أعتقد أنك تحتاج إلى إعادة التفكير في كيفية تشغيل الأمر. على سبيل المثال، يتم إعداد CodeBase الخاص بي

/src
    /com
        /bkwld
            /fetch

عادة ما أشغل ASDOC داخل "SRC":

asdoc -source-path . -doc-classes com/bkwld/fetch/Fetch

حاولت كل هذه في جلب وكلها عملت كلها كما هو متوقع:

*  @see FetchItem
*  @see com.bkwld.utils.Logger
*  @see #_dispatcher

أخذني أولا إلى صفحة Fetchitem، وأخذني الثاني إلى صفحة المسجل في حزمة مختلفة، قفز ثالث الصفحة إلى الأساليب المحمية لجلب.

فقط بدافع الفضول ... ما هي إصدار SDK الذي تستخدمه؟

نصائح أخرى

أعتقد أن المشكلة هي خطك

-Doc مصادر mypackage

تحديد "." هناك بدلا من "mypackage" يجب أن يحصل عليه ثابت (لذلك جعله متطابقا لمسار المصدر الخاص بك)

لقد كتبت برنامج نصي ثعبان بسيط يعمل بإصلاح المسارات التي تم إنشاؤها بشكل غير صحيح بواسطة ASDOC في العلبة المذكورة المذكورة أعلاه. وهي، إذا كانت هناك طريقة MyMethod (V: MyClass، ...) تقوم ASDOC بشكل غير صحيح بإنشاء Link Href = "../ mypackage: myclass" سيقوم البرنامج النصي بإصلاح هذا استبدال: بواسطة A /

يجب أن ألاحظ أن المستندات التي أنشأها هيكل "مسطح" جميل، وهو عبء واحدة مع مجموعة من الفصول الدراسية. ليس لدي أي فكرة إذا كان الإصلاح يعمل مع هياكل وثائق أكثر تعقيدا.

على أي حال، إذا أراد أي شخص تجربة البرنامج النصي، سأكون سعيدا بإرساله.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top