.\" Automatically generated by Pandoc 3.10.2 .\" .TH "JAVADOC" "1" "2026" "JDK 25.0.4.1" "JDK Commands" .SH "نام (NAME)" javadoc \- تولید صفحات HTML مستندات API از فایل‌های مبدأ جاوا .SH "خلاصه دستور (SYNOPSIS)" \f[CR]javadoc\f[R] [\f[I]options\f[R]] [\f[I]packagenames\f[R]] [\f[I]sourcefiles\f[R]] [\f[CR]\(at\f[R]\f[I]files\f[R]] .TP \f[I]options\f[R] گزینه‌های خط فرمان را مشخص می‌کند که با فاصله از یکدیگر جدا می‌شوند. بخش‌های \f[B]گزینه‌های استاندارد \f[CB]javadoc\f[B]\f[R]، \f[B]گزینه‌های اضافی \f[CB]javadoc\f[B]\f[R]، \f[B]گزینه‌های استاندارد برای Doclet استاندارد\f[R]، و \f[B]گزینه‌های اضافی برای Doclet استاندارد\f[R] را ببینید. .TP \f[I]packagenames\f[R] نام بسته‌هایی (packages) را که می‌خواهید مستندسازی کنید مشخص می‌کند که با فاصله از یکدیگر جدا می‌شوند؛ برای مثال \f[CR]java.lang java.lang.reflect java.awt\f[R]. اگر می‌خواهید زیربسته‌ها (subpackages) را نیز مستندسازی کنید، از گزینهٔ \f[CR]\-subpackages\f[R] برای تعیین بسته‌ها استفاده نمایید. .RS به‌طور پیش‌فرض، \f[CR]javadoc\f[R] بسته‌های مشخص‌شده را در دایرکتوری جاری و زیردایرکتوری‌های آن جستجو می‌کند. از گزینهٔ \f[CR]\-sourcepath\f[R] برای مشخص کردن فهرستی از دایرکتوری‌ها جهت جستجوی بسته‌ها استفاده کنید. .RE .TP \f[I]sourcefiles\f[R] نام فایل‌های مبدأ جاوایی را که می‌خواهید مستندسازی کنید مشخص می‌کند که با فاصله از یکدیگر جدا می‌شوند؛ برای مثال \f[CR]Class.java Object.java Button.java\f[R]. به‌طور پیش‌فرض، \f[CR]javadoc\f[R] کلاس‌های مشخص‌شده را در دایرکتوری جاری جستجو می‌کند. با این حال، می‌توانید مسیر کامل فایل کلاس را مشخص کرده و از نویسه‌های عام (wildcards) استفاده کنید؛ برای مثال \f[CR]/home/src/java/awt/Graphics*.java\f[R]. همچنین می‌توانید مسیر را نسبت به دایرکتوری جاری مشخص کنید. .TP \f[CR]\(at\f[R]\f[I]files\f[R] نام فایل‌هایی را مشخص می‌کند که شامل فهرستی از گزینه‌های ابزار \f[CR]javadoc\f[R]، نام بسته‌ها و نام فایل‌های مبدأ با هر ترتیبی هستند. .SH "توضیحات (DESCRIPTION)" ابزار \f[CR]javadoc\f[R] اعلان‌ها و کامنت‌های مستندسازی را در مجموعه‌ای از فایل‌های مبدأ جاوا تجزیه کرده و آن‌ها را با استفاده از یک بک‌اند قابل اتصال (pluggable back-end) به نام \f[B]\f[BI]doclet\f[B]\f[R] پردازش می‌کند. .PP ابزار \f[B]\f[BI]standard doclet\f[B]\f[R] (داکلت استاندارد) گزینه‌ای است که به‌طور پیش‌فرض استفاده می‌شود و می‌تواند صفحات HTML متناظری تولید کند که کلاس‌های عمومی (public) و حفاظت‌شده (protected)، کلاس‌های تودرتو و به‌طور ضمنی اعلان‌شده (اما نه کلاس‌های داخلی ناشناس)، رابط‌ها (interfaces)، سازنده‌ها (constructors)، متدها و فیلدها را شرح می‌دهند. داکلت استاندارد محتوای کامنت‌های مستندسازی را بر اساس \f[B]مشخصات کامنت مستندسازی JavaDoc برای Doclet استاندارد\f[R] تفسیر می‌کند. برچسب‌های سفارشی (custom tags) در کامنت‌های مستندسازی از طریق \f[B]taglet\f[R]ها پشتیبانی می‌شوند. .PP شما می‌توانید از ابزار \f[CR]javadoc\f[R] و داکلت استاندارد برای تولید مستندات API یا مستندات پیاده‌سازی برای مجموعه‌ای از فایل‌های مبدأ استفاده کنید. .PP می‌توانید ابزار \f[CR]javadoc\f[R] را بر روی تمام بسته‌ها، فایل‌های مبدأ جداگانه، یا هر دو اجرا نمایید. هنگام مستندسازی کل بسته‌ها، می‌توانید از گزینهٔ \f[CR]\-subpackages\f[R] برای پیمایش بازگشتی یک دایرکتوری و زیردایرکتوری‌های آن، یا برای ارسال یک فهرست صریح از نام بسته‌ها استفاده کنید. هنگام مستندسازی فایل‌های مبدأ جداگانه، فهرستی از نام‌های فایل‌های مبدأ جاوا را وارد نمایید. .SS "کامنت‌های مستندسازی (Documentation Comments)" ابزار \f[CR]javadoc\f[R] از کامنت مستندسازی (در صورت وجود) که بلافاصله پیش از شروع اعلان قرار دارد استفاده می‌کند؛ خواه این اعلان یک یادداشت (annotation)، تغییردهنده (modifier) یا نام در حال اعلان باشد. اگر چندین کامنت مستندسازی پیش از اعلان وجود داشته باشد، فقط آخرین مورد (نزدیک‌ترین به اعلان) استفاده خواهد شد. اگر هر کامنت مستندسازی بعد از شروع اعلان قرار گیرد، نادیده گرفته می‌شود. برای بررسی وجود هرگونه کامنت مستندسازی اضافی یا نابجا، کد مبدأ خود را با گزینهٔ \f[CR]\-Xlint\f[R] در \f[CR]javac\f[R]، یا به‌طور دقیق‌تر با \f[CR]\-Xlint:dangling\-doc\-comments\f[R] کامپایل کنید. درون یک فایل مبدأ، می‌توانید با استفاده از \f[CR]\(atSuppressWarnings(\(dqdangling\-doc\-comments\(dq)\f[R] روی یک اعلان دربرگیرندهٔ مناسب، هرگونه هشدار تولیدشده توسط این گزینه‌ها را نادیده بگیرید..SS "انطباق (Conformance)" داکلت استاندارد محتوای کامنت‌های مستندسازی را از نظر انطباق اعتبارسنجی نمی‌کند و همچنین تلاشی برای تصحیح هیچ خطایی در کامنت‌های مستندسازی انجام نمی‌دهد. به هر کاربری که javadoc را اجرا می‌کند توصیه می‌شود از مشکلاتی که ممکن است هنگام تولید خروجی‌های ناسازگار با استاندارد یا خروجی‌های حاوی محتوای اجرایی، مانند JavaScript رخ دهند، آگاه باشد. داکلت استاندارد قابلیت \f[B]DocLint\f[R] را برای کمک به توسعه‌دهندگان در تشخیص مشکلات رایج در کامنت‌های مستندسازی ارائه می‌دهد؛ اما با این حال توصیه می‌شود که خروجی تولیدشده با هر ابزار مناسب بررسی انطباق و دیگر ابزارهای بازبینی اعتبارسنجی شود. .PP برای جزئیات بیشتر پیرامون الزامات انطباق اسناد HTML5، به \f[B]Conformance requirements for authors\f[R] [https://html.spec.whatwg.org/multipage/introduction.html#conformance\-requirements\-for\-authors] در مشخصات HTML5 مراجعه کنید. برای جزئیات بیشتر درباره مسائل امنیتی مربوط به صفحات وب، به صفحه \f[B]Open Web Application Security Project (OWASP)\f[R] [https://www.owasp.org] مراجعه کنید. .SH "گزینه‌ها (OPTIONS)" ابزار \f[CR]javadoc\f[R] از گزینه‌های خط فرمان هم برای ابزار اصلی \f[CR]javadoc\f[R] و هم برای داکلت انتخاب‌شده فعلی پشتیبانی می‌کند. در صورتی که داکلت دیگری مشخص نشده باشد، از داکلت استاندارد استفاده می‌شود. .PP گزینه‌های به سبک گنو (یعنی آن‌هایی که با \f[CR]\-\-\f[R] آغاز می‌شوند) می‌توانند به جای نویسه‌های فاصله، از یک علامت مساوی (\f[CR]=\f[R]) برای جداسازی نام گزینه از مقدار آن استفاده کنند. .SS "گزینه‌های استاندارد \f[CR]javadoc\f[R] (Standard javadoc Options)" گزینه‌های اصلی \f[CR]javadoc\f[R] زیر معادل گزینه‌های متناظر در \f[CR]javac\f[R] هستند. برای توضیحات دقیق درباره استفاده از این گزینه‌ها، بخش \f[I]Standard Options\f[R] در \f[B]javac\f[R] را ببینید: .IP \(bu 2 \f[CR]\-\-add\-modules\f[R] .IP \(bu 2 \f[CR]\-bootclasspath\f[R] .IP \(bu 2 \f[CR]\-\-class\-path\f[R]، \f[CR]\-classpath\f[R] یا \f[CR]\-cp\f[R] .IP \(bu 2 \f[CR]\-\-disable\-line\-doc\-comments\f[R] .IP \(bu 2 \f[CR]\-\-enable\-preview\f[R] .IP \(bu 2 \f[CR]\-encoding\f[R] .IP \(bu 2 \f[CR]\-extdirs\f[R] .IP \(bu 2 \f[CR]\-\-limit\-modules\f[R] .IP \(bu 2 \f[CR]\-\-module\f[R] .IP \(bu 2 \f[CR]\-\-module\-path\f[R] یا \f[CR]\-p\f[R] .IP \(bu 2 \f[CR]\-\-module\-source\-path\f[R] .IP \(bu 2 \f[CR]\-\-release\f[R] .IP \(bu 2 \f[CR]\-\-source\f[R] یا \f[CR]\-source\f[R] .IP \(bu 2 \f[CR]\-\-source\-path\f[R] یا \f[CR]\-sourcepath\f[R] .IP \(bu 2 \f[CR]\-\-system\f[R] .IP \(bu 2 \f[CR]\-\-upgrade\-module\-path\f[R] .PP گزینه‌های زیر گزینه‌های اصلی \f[CR]javadoc\f[R] هستند که معادلی در بین گزینه‌های \f[CR]javac\f[R] ندارند: .TP \f[CR]\-breakiterator\f[R] جمله اول توضیحات را در یک کامنت مستندسازی با استفاده از یک نمونه از \f[CR]java.text.BreakIterator\f[R] برای تشخیص \f[I]پایان جمله\f[R] محاسبه می‌کند. قوانین مورداستفاده به \f[B]لوکال جاری\f[R] بستگی دارد: به عنوان مثال، در زبان انگلیسی، پایان جمله پس از یک نقطه، علامت سؤال یا علامت تعجب که با یک فاصله دنبال شده و واژه بعدی با یک حرف بزرگ آغاز می‌شود، رخ می‌دهد. (این سازوکار برای مدیریت بیشتر اختصارات در نظر گرفته شده است، مانند \(dqThe serial no. is valid\(dq، اما مواردی مانند \(dqMr. Smith\(dq را مدیریت نخواهد کرد.) .RS اگر زبان لوکال جاری انگلیسی نباشد، این گزینه به‌طور پیش‌فرض فعال است. اگر زبان لوکال جاری انگلیسی باشد و گزینه \f[CR]\-breakiterator\f[R] داده نشود، یک الگوریتم پیش‌فرض ساده استفاده می‌شود که فقط به دنبال یک نقطه و به دنبال آن یک فاصله می‌گردد. در کامنت‌های سنتی \f[CR]/**...*/\f[R]، جستجو برای انتهای جمله اول با یک برچسب بلوکی HTML مانند \f[CR]

\f[R]، \f[CR]

\f[R] یا برچسب عنوان خاتمه می‌یابد.
در کامنت‌های مارک‌داون \f[CR]///\f[R]، جستجو برای انتهای جمله اول از روی هرگونه
نویسه محصور در بخش‌های کد (code spans) و پیوندها صرف‌نظر کرده و با انتهای
بلوک اولیه که توسط یک خط خالی یا آغاز بلوک بعدی (مانند یک فهرست، شکست موضوعی
یا یک بلوک HTML) مشخص شده است، خاتمه می‌یابد.
جمله نخست توضیحات در یک کامنت مستندسازی، در جدول‌های خلاصه، صفحات نمایه و
دیگر موقعیت‌هایی که خلاصه‌ای کوتاه لازم است، به کار می‌رود.
برای اعمال کنترل صریح‌تر در هر کامنت مستندسازی به صورت جداگانه، محتوای جمله اول
را درون یک برچسب \f[CR]{\(atsummary ...}\f[R]، یا در صورت لزوم، درون یک برچسب
\f[CR]{\(atreturn ...}\f[R] قرار دهید.
.RE
.TP
\f[CR]\-doclet\f[R] \f[I]class\f[R]
خروجی را با استفاده از یک داکلت جایگزین تولید می‌کند.
از نام کامل کلاس استفاده کنید.
این داکلت محتوا را تعیین کرده و خروجی را قالب‌بندی می‌کند.
اگر گزینه \f[CR]\-doclet\f[R] استفاده نشود، ابزار \f[CR]javadoc\f[R] از داکلت
استاندارد برای تولید قالب پیش‌فرض HTML استفاده می‌کند.
این کلاس باید رابط \f[CR]jdk.javadoc.doclet.Doclet\f[R] را پیاده‌سازی کند.
مسیر این کلاس با گزینه \f[CR]\-docletpath\f[R] مشخص می‌شود.
.TP
\f[CR]\-docletpath\f[R] \f[I]path\f[R]
محل یافتن فایل‌های کلاس داکلت (مشخص‌شده با گزینه \f[CR]\-doclet\f[R]) و
تمامی فایل‌های JAR که به آن وابسته است را تعیین می‌کند.
اگر فایل کلاس شروع‌کننده درون یک فایل JAR باشد، این گزینه مسیر منتهی به
آن فایل JAR را مشخص می‌کند.
می‌توانید یک مسیر مطلق یا مسیری نسبت به دایرکتوری جاری مشخص کنید.
اگر \f[CR]path\f[R] حاوی چندین مسیر یا فایل JAR باشد، باید در لینوکس و
macOS با دو نقطه (\f[CR]:\f[R])، و در ویندوز با نقطه ویرگول (\f[CR];\f[R])
از یکدیگر جدا شوند.
اگر کلاس شروع‌کننده \f[CR]doclet\f[R] از قبل در مسیر جستجو موجود باشد، استفاده
از این گزینه ضروری نیست.
.TP
\f[CR]\-exclude\f[R] \f[I]pkglist\f[R]
بسته‌های مشخص‌شده و زیربسته‌های آن‌ها را بدون قید و شرط از فهرست تشکیل‌شده
توسط \f[CR]\-subpackages\f[R] مستثنی می‌کند.
این گزینه بسته‌های مزبور را حتی اگر پیش‌تر یا بعداً توسط گزینه‌ای از نوع
\f[CR]\-subpackages\f[R] شامل شده باشند، مستثنی می‌کند.
.RS
مثال زیر شامل بسته‌های \f[CR]java.io\f[R]، \f[CR]java.util\f[R] و \f[CR]java.math\f[R]
(در کنار موارد دیگر) خواهد بود، اما بسته‌هایی را که ریشه در \f[CR]java.net\f[R]
و \f[CR]java.lang\f[R] دارند مستثنی می‌کند.
توجه داشته باشید که این مثال‌ها بسته \f[CR]java.lang.ref\f[R] را که زیربسته‌ای از
\f[CR]java.lang\f[R] است نیز مستثنی می‌کنند.
آرگومان‌ها در تمام سیستم‌های عامل با دونقطه از یکدیگر جدا می‌شوند.
.IP \(bu 2
\f[B]لینوکس و macOS:\f[R]
.RS 2
.IP
.EX
javadoc \-sourcepath /home/user/src \-subpackages java \-exclude java.net:java.lang
.EE
.RE
.IP \(bu 2
\f[B]ویندوز:\f[R]
.RS 2
.IP
.EX
javadoc \-sourcepath \(rsuser\(rssrc \-subpackages java \-exclude java.net:java.lang
.EE
.RE
.RE
.TP
\f[CR]\-\-expand\-requires\f[R] (\f[CR]transitive\f[R]|\f[CR]all\f[R])
به ابزار javadoc دستور می‌دهد تا مجموعه ماژول‌هایی را که باید مستندسازی شوند گسترش دهد.
به‌طور پیش‌فرض، تنها ماژول‌هایی که صراحتاً در خط فرمان مشخص شده‌اند
مستندسازی می‌شوند.
از مقادیر زیر پشتیبانی می‌کند:
.RS
.IP \(bu 2
\f[CR]transitive\f[R]: علاوه بر آن، تمام وابستگی‌های متعدی (transitive) مورد نیاز
آن ماژول‌ها را در بر می‌گیرد.
.IP \(bu 2
\f[CR]all\f[R]: شامل تمام وابستگی‌ها می‌شود.
.RE
.TP
\f[CR]\-\-help\f[R]، \f[CR]\-help\f[R]، \f[CR]\-h\f[R] یا \f[CR]\-?\f[R]
خلاصه‌ای از گزینه‌های استاندارد را چاپ می‌کند.
.TP
\f[CR]\-\-help\-extra\f[R] یا \f[CR]\-X\f[R]
خلاصه‌ای از مجموعه گزینه‌های اضافی را چاپ می‌کند.
.TP
\f[CR]\-J\f[R]\f[I]flag\f[R]
پرچم \f[I]flag\f[R] را مستقیماً به محیط زمان اجرای جاوا (JRE) که ابزار
\f[CR]javadoc\f[R] را اجرا می‌کند، ارسال می‌کند.
برای نمونه، اگر باید اطمینان حاصل کنید که سیستم ۳۲ مگابایت حافظه برای پردازش
مستندات تولیدشده اختصاص می‌دهد، گزینه \f[CR]\-Xmx\f[R] را به این شکل
فراخوانی می‌کنید:
\f[CR]javadoc \-J\-Xmx32m \-J\-Xms32m com.mypackage\f[R].
توجه داشته باشید که \f[CR]\-Xms\f[R] اختیاری است زیرا فقط اندازه حافظه اولیه را
تعیین می‌کند، که در صورت اطلاع از حداقل حافظه مورد نیاز مفید است.
.RS
هیچ فاصله‌ای بین \f[CR]J\f[R] و \f[CR]flag\f[R] وجود ندارد.
از گزینه \f[CR]\-version\f[R] برای گزارش نسخه JRE مورد استفاده در اجرای
ابزار \f[CR]javadoc\f[R] استفاده کنید..IP
.EX
javadoc \-J\-version
java version \(dq17\(dq 2021\-09\-14 LTS
Java(TM) SE Runtime Environment (build 17+35\-LTS\-2724)
Java HotSpot(TM) 64\-Bit Server VM (build 17+35\-LTS\-2724, mixed mode, sharing)
.EE
.RE
.TP
\f[CR]\-locale\f[R] \f[I]name\f[R]
لوکال (محیط محلی) مورد استفاده ابزار \f[CR]javadoc\f[R] را هنگام تولید مستندات تعیین می‌کند.
آرگومان، نام لوکال است، همان‌طور که در مستندات \f[CR]java.util.Locale\f[R] شرح داده شده است، مانند \f[CR]en_US\f[R]
(انگلیسی، ایالات متحده) یا \f[CR]en_US_WIN\f[R] (گونه ویندوز).
.RS
مشخص کردن یک لوکال باعث می‌شود ابزار \f[CR]javadoc\f[R] فایل‌های منبع (resource files) آن لوکال را برای پیام‌هایی مانند رشته‌های نوار ناوبری، سربرگ‌های فهرست‌ها و جدول‌ها، محتویات فایل راهنما، یادداشت‌های موجود در فایل \f[CR]stylesheet.css\f[R] و موارد مشابه انتخاب کند.
همچنین ترتیب مرتب‌سازی فهرست‌هایی را که بر اساس الفبا مرتب می‌شوند، و جداکننده جمله را برای تعیین پایان نخستین جمله مشخص می‌سازد.
گزینه \f[CR]\-locale\f[R] لوکال متن یادداشت‌های مستندسازی قید شده در فایل‌های مبدأ کلاس‌های مستندشده را تعیین نمی‌کند.
.RE
.TP
\f[CR]\-package\f[R]
تنها کلاس‌ها و اعضای package، protected و public را نمایش می‌دهد.
.TP
\f[CR]\-private\f[R]
همه کلاس‌ها و اعضا را نمایش می‌دهد.
.TP
\f[CR]\-protected\f[R]
تنها کلاس‌ها و اعضای protected و public را نمایش می‌دهد.
این حالت پیش‌فرض است.
.TP
\f[CR]\-public\f[R]
تنها کلاس‌ها و اعضای public را نمایش می‌دهد.
.TP
\f[CR]\-quiet\f[R]
پیام‌ها را بی‌صدا می‌کند تا تنها هشدارها و خطاها نمایش داده شوند و مشاهده آن‌ها آسان‌تر شود.
همچنین از نمایش رشته \f[CR]version\f[R] جلوگیری می‌کند.
.TP
\f[CR]\-\-show\-members\f[R] \f[I]value\f[R]
مشخص می‌کند کدام اعضا (فیلدها، متدها یا سازنده‌ها) مستند شوند، که در آن \f[I]value\f[R] می‌تواند یکی از موارد زیر باشد:
.RS
.IP \(bu 2
\f[CR]public\f[R] \-\-\- تنها اعضای public را نمایش می‌دهد
.IP \(bu 2
\f[CR]protected\f[R] \-\-\- اعضای public و protected را نمایش می‌دهد؛ این حالت پیش‌فرض است
.IP \(bu 2
\f[CR]package\f[R] \-\-\- اعضای public، protected و package را نمایش می‌دهد
.IP \(bu 2
\f[CR]private\f[R] \-\-\- همه اعضا را نمایش می‌دهد
.RE
.TP
\f[CR]\-\-show\-module\-contents\f[R] \f[I]value\f[R]
میزان جزئیات مستندسازی اعلانات ماژول را مشخص می‌کند، که در آن \f[I]value\f[R] می‌تواند \f[CR]api\f[R] یا \f[CR]all\f[R] باشد.
.TP
\f[CR]\-\-show\-packages\f[R] \f[I]value\f[R]
مشخص می‌کند کدام بسته‌های ماژول مستند شوند، که در آن \f[I]value\f[R] می‌تواند بسته‌های \f[CR]exported\f[R] یا \f[CR]all\f[R] باشد.
.TP
\f[CR]\-\-show\-types\f[R] \f[I]value\f[R]
مشخص می‌کند کدام نوع‌ها (کلاس‌ها، رابط‌ها و غیره) مستند شوند، که در آن \f[I]value\f[R] می‌تواند یکی از موارد زیر باشد:
.RS
.IP \(bu 2
\f[CR]public\f[R] \-\-\- تنها نوع‌های public را نمایش می‌دهد
.IP \(bu 2
\f[CR]protected\f[R] \-\-\- نوع‌های public و protected را نمایش می‌دهد؛ این حالت پیش‌فرض است
.IP \(bu 2
\f[CR]package\f[R] \-\-\- نوع‌های public، protected و package را نمایش می‌دهد
.IP \(bu 2
\f[CR]private\f[R] \-\-\- همه نوع‌ها را نمایش می‌دهد
.RE
.TP
\f[CR]\-subpackages\f[R] \f[I]subpkglist\f[R]
مستندات را از فایل‌های مبدأ موجود در بسته‌های مشخص‌شده و به‌صورت بازگشتی در زیربسته‌های آن‌ها تولید می‌کند.
این گزینه هنگام افزودن زیربسته‌های جدید به کد مبدأ مفید است زیرا آن‌ها به‌طور خودکار گنجانده می‌شوند.
هر آرگومان بسته، هرگونه زیربسته سطح‌بالا (مانند \f[CR]java\f[R]) یا نام کامل یک بسته (مانند \f[CR]javax.swing\f[R]) است که نیازی به داشتن فایل‌های مبدأ در درون خود ندارد.
آرگومان‌ها در تمامی سیستم‌عامل‌ها با دو نقطه از یکدیگر جدا می‌شوند.
استفاده از نویسه‌های عام (wildcard) مجاز نیست.
از \f[CR]\-sourcepath\f[R] برای مشخص کردن محل یافتن بسته‌ها استفاده کنید.
این گزینه فایل‌های مبدئی را که در درخت مبدأ قرار دارند اما به این بسته‌ها تعلق ندارند، پردازش نمی‌کند.
.RS
برای نمونه، دستورهای زیر برای بسته‌هایی با نام \f[CR]java\f[R] و \f[CR]javax.swing\f[R] و تمام زیربسته‌های آن‌ها مستندات تولید می‌کنند.
.IP \(bu 2
\f[B]Linux و macOS:\f[R]
.RS 2
.IP
.EX
javadoc \-d docs \-sourcepath /home/user/src \-subpackages java:javax.swing
.EE
.RE
.IP \(bu 2
\f[B]Windows:\f[R]
.RS 2
.IP
.EX
javadoc \-d docs \-sourcepath \(rsuser\(rssrc \-subpackages java:javax.swing
.EE
.RE
.RE
.TP
\f[CR]\-verbose\f[R]
پیام‌های دقیق‌تری را در حین اجرای ابزار \f[CR]javadoc\f[R] ارائه می‌دهد.
بدون گزینه \f[CR]\-verbose\f[R]، پیام‌ها تنها برای بارگذاری فایل‌های مبدأ، تولید مستندات (یک پیام به ازای هر فایل مبدأ)، و مرتب‌سازی نمایش می‌یابند.
گزینه \f[CR]\-verbose\f[R] موجب چاپ پیام‌های اضافی می‌شود که مدت زمان لازم (به میلی‌ثانیه) برای تجزیه هر فایل مبدأ جاوا را مشخص می‌کنند.
.TP
\f[CR]\-\-version\f[R]
اطلاعات نسخه را چاپ می‌کند.
.TP
\f[CR]\-Werror\f[R]
در صورت بروز هرگونه هشدار، یک خطا گزارش می‌دهد.
.PP
توجه داشته باشید که اگر یک فایل مبدأ جاوا حاوی یک کلاس اعلام‌شده به‌صورت ضمنی (implicitly declared class) باشد، آن کلاس و اعضای public، protected و package آن صرف‌نظر از گزینه‌هایی مانند \f[CR]\-\-show\-types\f[R]، \f[CR]\-\-show\-members\f[R]، \f[CR]\-private\f[R]، \f[CR]\-protected\f[R]، \f[CR]\-package\f[R] و \f[CR]\-public\f[R] مستند خواهند شد.
اگر \f[CR]\-\-show\-members\f[R] با مقدار \f[CR]private\f[R] مشخص شود یا اگر \f[CR]\-private\f[R] به کار رود، آن‌گاه تمامی اعضای private کلاس اعلام‌شده به‌صورت ضمنی نیز مستند خواهند شد..SS گزینه‌های اضافی \f[CR]javadoc\f[R]
\f[I]نکته:\f[R] گزینه‌های اضافی \f[CR]javadoc\f[R] ممکن است بدون
اطلاع قبلی تغییر کنند.
.PP
گزینه‌های اضافی \f[CR]javadoc\f[R] زیر معادل گزینه‌های متناظر
در \f[CR]javac\f[R] هستند.
برای توضیحات دقیق درباره نحوه استفاده از این گزینه‌ها، به بخش
\f[I]Extra Options\f[R] در \f[B]javac\f[R] مراجعه کنید:
.IP \(bu 2
\f[CR]\-\-add\-exports\f[R]
.IP \(bu 2
\f[CR]\-\-add\-reads\f[R]
.IP \(bu 2
\f[CR]\-\-patch\-module\f[R]
.IP \(bu 2
\f[CR]\-Xmaxerrs\f[R]
.IP \(bu 2
\f[CR]\-Xmaxwarns\f[R]
.SS گزینه‌های استاندارد برای Doclet استاندارد
گزینه‌های زیر توسط doclet استاندارد ارائه می‌شوند.
.TP
\f[CR]\-\-add\-script\f[R] \f[I]file\f[R]
فایل \f[I]file\f[R] را به عنوان یک فایل جاوااسکریپت اضافی به مستندات
تولیدشده می‌افزاید.
از این گزینه می‌توان یک یا چند بار برای مشخص کردن فایل‌های اسکریپت
اضافی استفاده کرد.
.RS
مثال خط فرمان:
.RS
.PP
\f[CR]javadoc \-\-add\-script first_script.js \-\-add\-script second_script.js pkg_foo\f[R]
.RE
.RE
.TP
\f[CR]\-\-add\-stylesheet\f[R] \f[I]file\f[R]
فایل \f[I]file\f[R] را به عنوان یک فایل شیوه‌نامه (stylesheet) اضافی به
مستندات تولیدشده می‌افزاید.
از این گزینه می‌توان یک یا چند بار برای مشخص کردن شیوه‌نامه‌های اضافی
گنجانده‌شده در مستندات استفاده کرد.
.RS
مثال خط فرمان:
.IP
.EX
javadoc \-\-add\-stylesheet new_stylesheet_1.css \-\-add\-stylesheet new_stylesheet_2.css pkg_foo
.EE
.RE
.TP
\f[CR]\-\-allow\-script\-in\-comments\f[R]
اجازه استفاده از جاوااسکریپت در کامنت‌های مستندات و گزینه‌هایی که
مقدار آن‌ها \f[I]html\-code\f[R] است را می‌دهد.
.TP
\f[CR]\-author\f[R]
متن تمام برچسب‌های \f[CR]author\f[R] را در مستندات تولیدشده می‌گنجاند.
.TP
\f[CR]\-bottom\f[R] \f[I]html\-code\f[R]
متنی را که باید در پایین هر صفحه تولیدشده قرار گیرد مشخص می‌کند.
این متن می‌تواند حاوی برچسب‌های HTML و نویسه‌های فاصله خالی باشد، اما
در این صورت، متن باید داخل علامت نقل‌قول قرار گیرد.
برای هرگونه علامت نقل‌قول داخلی در متن، از نویسه‌های گریز (escape) استفاده کنید.
.TP
\f[CR]\-charset\f[R] \f[I]name\f[R]
مجموعه نویسه‌های HTML (character set) را برای این سند مشخص می‌کند.
نام باید یک نام ترجیحی MIME باشد، همان‌طور که در \f[B]IANA
Registry, Character Sets\f[R]
[http://www.iana.org/assignments/character\-sets] مشخص شده است.
.RS
برای مثال:
.IP
.EX
javadoc \-charset \(dqiso\-8859\-1\(dq mypackage
.EE
این دستور خط زیر را، شامل یک
\f[B]عنصر \f[CB]meta\f[B]\f[R]
[https://html.spec.whatwg.org/multipage/semantics.html#the\-meta\-element]
در بخش head هر صفحه تولیدشده درج می‌کند:
.IP
.EX

.EE
.RE
.TP
\f[CR]\-d\f[R] \f[I]directory\f[R]
دایرکتوری مقصدی را که ابزار \f[CR]javadoc\f[R] فایل‌های HTML
تولیدشده را در آن ذخیره می‌کند مشخص می‌نماید.
اگر گزینه \f[CR]\-d\f[R] را نادیده بگیرید، فایل‌ها در دایرکتوری
فعلی ذخیره می‌شوند.
مقدار \f[CR]directory\f[R] می‌تواند مطلق یا نسبت به دایرکتوری کاری
فعلی باشد.
دایرکتوری مقصد هنگام اجرای ابزار \f[CR]javadoc\f[R] به طور خودکار
ایجاد می‌شود.
.RS
.IP \(bu 2
\f[B]لینوکس و macOS:\f[R] برای مثال، دستور زیر مستندات بسته
\f[CR]com.mypackage\f[R] را تولید کرده و نتایج را در دایرکتوری
\f[CR]/user/doc/\f[R] ذخیره می‌کند:
.RS 2
.IP
.EX
javadoc \-d /user/doc/ com.mypackage
.EE
.RE
.IP \(bu 2
\f[B]ویندوز:\f[R] برای مثال، دستور زیر مستندات بسته
\f[CR]com.mypackage\f[R] را تولید کرده و نتایج را در دایرکتوری
\f[CR]\(rsuser\(rsdoc\(rs\f[R] ذخیره می‌کند:
.RS 2
.IP
.EX
javadoc \-d \(rsuser\(rsdoc\(rs com.mypackage
.EE
.RE
.RE
.TP
\f[CR]\-docencoding\f[R] \f[I]name\f[R]
کدگذاری فایل‌های HTML تولیدشده را مشخص می‌کند.
نام باید یک نام ترجیحی MIME باشد، همان‌طور که در \f[B]IANA
Registry, Character Sets\f[R]
[http://www.iana.org/assignments/character\-sets] مشخص شده است.
.RS
سه گزینه برای استفاده در دستور کدگذاری \f[CR]javadoc\f[R] در دسترس است.
گزینه \f[CR]\-encoding\f[R] برای کدگذاری فایل‌های خوانده‌شده توسط
ابزار \f[CR]javadoc\f[R] به کار می‌رود، در حالی که گزینه‌های
\f[CR]\-docencoding\f[R] و \f[CR]\-charset\f[R] برای کدگذاری فایل‌های
نوشته‌شده توسط این ابزار استفاده می‌شوند.
از میان این سه گزینه، حداکثر تنها یک گزینه کدگذاری ورودی و یک گزینه
کدگذاری خروجی در یک دستور واحد استفاده می‌شوند.
اگر هر دو گزینه کدگذاری ورودی و خروجی را در یک دستور مشخص کنید، باید
مقدار یکسانی داشته باشند.
اگر هیچ‌یک از گزینه‌های خروجی را مشخص نکنید، مقدار پیش‌فرض آن همان
کدگذاری ورودی خواهد بود.
برای مثال:
.IP
.EX
javadoc \-docencoding \(dqiso\-8859\-1\(dq mypackage
.EE
.RE
.TP
\f[CR]\-docfilessubdirs\f[R]
کپی عمیق دایرکتوری‌های \f[CR]doc\-files\f[R] را فعال می‌کند.
زیردایرکتوری‌ها و تمام محتویات آن‌ها به صورت بازگشتی در مقصد
کپی می‌شوند.
برای مثال، دایرکتوری \f[CR]doc\-files/example/images\f[R] و تمام
محتویات آن کپی می‌شوند.
از گزینه \f[B]\f[CB]\-excludedocfilessubdir\f[B]\f[R] برای محدود
کردن زیردایرکتوری‌هایی که باید کپی شوند استفاده کنید.
.TP
\f[CR]\-doctitle\f[R] \f[I]html\-code\f[R]
عنوانی را که باید در بالای فایل خلاصه نمای کلی (overview summary) قرار
گیرد مشخص می‌کند.
متن مشخص‌شده در برچسب \f[CR]title\f[R] به صورت یک سرتیتر سطح یک و
وسط‌چین، مستقیماً زیر نوار ناوبری قرار می‌گیرد.
برچسب \f[CR]title\f[R] می‌تواند شامل برچسب‌های HTML و فاصله‌های
خالی باشد، اما در این صورت باید عنوان را درون علامت نقل‌قول قرار دهید.
علامت‌های نقل‌قول داخلی در برچسب \f[CR]title\f[R] باید با نویسه
گریز (escape) درج شوند.
برای مثال،
\f[CR]javadoc \-doctitle \(dqMy Library
v1.0\(dq com.mypackage\f[R]. .TP \f[CR]\-excludedocfilessubdir\f[R] \f[I]name1\f[R]\f[CR],\f[R]\f[I]name2...\f[R] هنگام کپی بازگشتی زیردایرکتوری‌های \f[CR]doc\-files\f[R]، هر زیردایرکتوری با نام‌های داده‌شده را نادیده می‌گیرد. به \f[B]\f[CB]\-docfilessubdirs\f[B]\f[R] مراجعه کنید. به دلایل تاریخی، می‌توان از \f[CR]:\f[R] در هر جای آرگومان به جای \f[CR],\f[R] به عنوان جداکننده استفاده کرد. .TP \f[CR]\-footer\f[R] \f[I]html\-code\f[R] این گزینه دیگر پشتیبانی نمی‌شود و یک هشدار صادر می‌کند. .TP \f[CR]\-group\f[R] \f[I]name\f[R] \f[I]g1\f[R]\f[CR],\f[R]\f[I]g2...\f[R] بسته‌های مشخص‌شده، یا ماژول‌ها را هنگام مستندسازی کد ماژولار، در صفحه نمای کلی (Overview) با یکدیگر گروه‌بندی می‌کند. به دلایل تاریخی، می‌توان از \f[CR]:\f[R] به عنوان جداکننده در هر جای آرگومان به جای \f[CR],\f[R] استفاده کرد. .TP \f[CR]\-header\f[R] \f[I]html\-code\f[R] متن سربرگی را که باید در بالای هر فایل خروجی قرار گیرد مشخص می‌کند. این سربرگ در سمت راست نوار ناوبری قرار می‌گیرد. مقدار \f[CR]header\f[R] می‌تواند شامل برچسب‌های HTML و فاصله‌های خالی باشد، اما در این صورت، \f[CR]header\f[R] باید داخل علامت نقل‌قول قرار گیرد. برای علامت‌های نقل‌قول داخلی در سربرگ، از نویسه‌های گریز استفاده کنید. برای مثال، \f[CR]javadoc \-header \(dqMy Library
v1.0\(dq com.mypackage\f[R]..TP \f[CR]\-helpfile\f[R] \f[I]filename\f[R] فایلی حاوی متنی را مشخص می‌کند که هنگام کلیک روی پیوند \f[B]HELP\f[R] در نوار پیمایش نمایش داده خواهد شد. اگر این گزینه داده نشود، ابزار \f[CR]javadoc\f[R] یک صفحه پیش‌فرض ایجاد می‌کند که استفاده خواهد شد. .TP \f[CR]\-html5\f[R] این گزینه بی‌اثر (no\-op) است و صرفاً برای سازگاری با نسخه‌های پیشین حفظ شده است. .TP \f[CR]\-\-javafx\f[R] یا \f[CR]\-javafx\f[R] عملکرد JavaFX را فعال می‌کند. اگر کلاس‌های کتابخانه JavaFX در مسیر ماژول شناسایی شوند، این گزینه به‌طور پیش‌فرض فعال است. .TP \f[CR]\-keywords\f[R] تگ‌های \f[CR]\f[R] کلمات کلیدی HTML را به فایل تولید‌شده برای هر کلاس اضافه می‌کند. این تگ‌ها می‌توانند به موتورهای جستجویی که به دنبال تگ‌های \f[CR]\f[R] هستند در یافتن صفحات کمک کنند. بیشتر موتورهای جستجو که کل اینترنت را جستجو می‌کنند، تگ‌های \f[CR]\f[R] را بررسی نمی‌کنند، زیرا صفحات می‌توانند از آن‌ها سوءاستفاده کنند. موتورهای جستجویی که توسط شرکت‌ها ارائه می‌شوند و جستجوهای خود را به وب‌سایت خودشان محدود می‌کنند، می‌توانند با بررسی تگ‌های \f[CR]\f[R] بهره‌مند شوند. تگ‌های \f[CR]\f[R] شامل نام کاملاً واجد شرایط (fully qualified name) کلاس و نام‌های غیرواجد شرایط فیلدها و متدها هستند. سازنده‌ها گنجانده نمی‌شوند زیرا با نام کلاس یکسان هستند. برای نمونه، صفحه مربوط به کلاس \f[CR]String\f[R] شامل این کلمات کلیدی است: .RS .IP .EX .EE .RE .TP \f[CR]\-link\f[R] \f[I]url\f[R] پیوندهایی به مستندات تولید‌شده موجود \f[CR]javadoc\f[R] برای کلاس‌های ارجاع‌شده خارجی ایجاد می‌کند. آرگومان \f[I]url\f[R] آدرس URL مطلق یا نسبی دایرکتوری‌ای است که شامل مستندات خارجی تولید‌شده با \f[CR]javadoc\f[R] می‌باشد. می‌توانید چند گزینه \f[CR]\-link\f[R] را در یک اجرای ابزار \f[CR]javadoc\f[R] برای پیوند دادن به چندین سند تعیین کنید. .RS باید یک فایل \f[CR]package\-list\f[R] یا \f[CR]element\-list\f[R] در این دایرکتوری \f[I]url\f[R] وجود داشته باشد (در غیر این صورت، از گزینه \f[CR]\-linkoffline\f[R] استفاده کنید). \f[I]نکته:\f[R] فایل‌های \f[CR]package\-list\f[R] و \f[CR]element\-list\f[R] هنگام ایجاد مستندات API توسط ابزار \f[CR]javadoc\f[R] تولید می‌شوند و نباید توسط کاربر تغییر داده شوند. هنگامی که از ابزار \f[CR]javadoc\f[R] برای مستندسازی بسته‌ها استفاده می‌کنید، از فایل \f[CR]package\-list\f[R] برای تعیین بسته‌های اعلان‌شده در یک API استفاده می‌کند. هنگامی که مستندات API را برای ماژول‌ها تولید می‌کنید، ابزار \f[CR]javadoc\f[R] از فایل \f[CR]element\-list\f[R] برای تعیین ماژول‌ها و بسته‌های اعلان‌شده در یک API بهره می‌برد. ابزار \f[CR]javadoc\f[R] نام‌ها را از فایل فهرست مناسب می‌خواند و سپس به بسته‌ها یا ماژول‌های موجود در آن URL پیوند می‌دهد. هنگام اجرای ابزار \f[CR]javadoc\f[R]، مقدار \f[I]url\f[R] در پیوندهای \f[CR]\f[R] که ایجاد می‌شوند کپی می‌گردد. بنابراین، \f[I]url\f[R] باید URL دایرکتوری باشد و نه یک فایل. می‌توانید از پیوند مطلق برای \f[I]url\f[R] استفاده کنید تا به اسناد خود اجازه دهید به سندی در هر وب‌سایتی پیوند بخورند، یا می‌توانید از یک پیوند نسبی برای پیوند دادن تنها به یک مکان نسبی استفاده نمایید. اگر از پیوند نسبی استفاده می‌کنید، مقداری که ارسال می‌کنید باید مسیر نسبی از دایرکتوری مقصد (مشخص‌شده با گزینه \f[CR]\-d\f[R]) به دایرکتوری حاوی بسته‌های مورد پیوند باشد. هنگامی که پیوند مطلق تعیین می‌کنید، معمولاً از پیوند HTTP استفاده می‌شود. با این حال، اگر می‌خواهید به سیستم فایلی که وب‌سرور ندارد پیوند دهید، می‌توانید از پیوند file استفاده کنید. تنها زمانی از پیوند file استفاده کنید که تمام افرادی که می‌خواهند به مستندات تولید‌شده دسترسی داشته باشند از یک سیستم فایل مشترک استفاده کنند. در همه موارد و در تمام سیستم‌های عامل، چه URL مطلق باشد یا نسبی، از اسلش به عنوان جداکننده استفاده کنید، و \f[CR]https:\f[R]، \f[CR]http:\f[R] یا \f[CR]file:\f[R] همان‌طور که در \f[B]RFC 1738: Uniform Resource Locators (URL)\f[R] [https://www.rfc\-editor.org/info/rfc1738] مشخص شده است. .IP .EX \-link https://///.../ \-link http://///.../ \-link file://///.../ \-link //.../ .EE .RE .TP \f[CR]\-\-link\-modularity\-mismatch\f[R] (\f[CR]warn\f[R]|\f[CR]info\f[R]) مشخص می‌کند که آیا مستندات خارجی با پیمانه‌ای‌بودن نادرست (مانند مستندات غیرماژولار برای یک کتابخانه ماژولار یا حالت برعکس) باید به عنوان هشدار (\f[CR]warn\f[R]) گزارش شوند یا صرفاً یک پیام (\f[CR]info\f[R]). رفتار پیش‌فرض، گزارش به صورت هشدار است. .TP \f[CR]\-linkoffline\f[R] \f[I]url1\f[R] \f[I]url2\f[R] این گزینه گونه‌ای از گزینه \f[CR]\-link\f[R] است. هر دوی آن‌ها پیوندهایی به مستندات تولید‌شده با \f[CR]javadoc\f[R] برای کلاس‌های ارجاع‌شده خارجی ایجاد می‌کنند. می‌توانید چند گزینه \f[CR]\-linkoffline\f[R] را در یک اجرای ابزار \f[CR]javadoc\f[R] تعیین کنید. .RS از گزینه \f[CR]\-linkoffline\f[R] زمانی استفاده کنید که: .IP \(bu 2 پیوند به سندی در وب باشد که ابزار \f[CR]javadoc\f[R] نتواند از طریق اتصال وب به آن دسترسی پیدا کند .IP \(bu 2 فایل \f[CR]package\-list\f[R] یا \f[CR]element\-list\f[R] سند خارجی یا قابل دسترسی نباشد یا در مکان URL وجود نداشته باشد، اما در مکان دیگری وجود داشته باشد و بتوان آن را با فایل \f[CR]package\-list\f[R] یا \f[CR]element\-list\f[R] (معمولاً محلی) مشخص کرد. \f[I]نکته:\f[R] فایل‌های \f[CR]package\-list\f[R] و \f[CR]element\-list\f[R] هنگام ایجاد مستندات API توسط ابزار \f[CR]javadoc\f[R] تولید می‌شوند و نباید توسط کاربر تغییر داده شوند. اگر \f[I]url1\f[R] فقط در وب جهان‌گستر قابل دسترسی باشد، گزینه \f[CR]\-linkoffline\f[R] این محدودیت را که ابزار \f[CR]javadoc\f[R] برای ایجاد مستندات باید اتصال وب داشته باشد، برطرف می‌کند. کاربرد دیگر گزینه \f[CR]\-linkoffline\f[R] به عنوان راهکاری برای به‌روزرسانی اسناد است. پس از اجرای ابزار \f[CR]javadoc\f[R] بر روی مجموعه‌ای کامل از بسته‌ها یا ماژول‌ها، می‌توانید ابزار \f[CR]javadoc\f[R] را دوباره بر روی مجموعه کوچک‌تری از بسته‌ها یا ماژول‌های تغییر‌یافته اجرا کنید تا فایل‌های به‌روزرسانی‌شده بتوانند دوباره در مجموعه اصلی جای گیرند. برای نمونه، گزینه \f[CR]\-linkoffline\f[R] دو آرگومان می‌پذیرد. اولی برای رشته‌ای است که باید در پیوندهای \f[CR]\f[R] قرار گیرد، و دومی به ابزار \f[CR]javadoc\f[R] می‌گوید که فایل \f[CR]package\-list\f[R] یا \f[CR]element\-list\f[R] را در کجا پیدا کند. مقدار \f[I]url1\f[R] یا \f[I]url2\f[R] آدرس URL مطلق یا نسبی دایرکتوری‌ای است که شامل مستندات خارجی تولید‌شده با \f[CR]javadoc\f[R] است که می‌خواهید به آن پیوند دهید. در صورت نسبی بودن، مقدار باید مسیر نسبی از دایرکتوری مقصد (مشخص‌شده با گزینه \f[CR]\-d\f[R]) به ریشه بسته‌های مورد پیوند باشد. توضیحات \f[I]url\f[R] را در گزینه \f[CR]\-link\f[R] ببینید. .RE .TP \f[CR]\-\-link\-platform\-properties\f[R] \f[I]url\f[R] یک فایل properties مورد استفاده برای پیکربندی پیوندها به مستندات سکو را مشخص می‌کند. .RS انتظار می‌رود آرگومان \f[I]url\f[R] به یک فایل properties اشاره کند که شامل یک یا چند ورودی با قالب زیر است، که در آن \f[CR]\f[R] نسخه سکو به شکلی است که به گزینه \f[CR]\-\-release\f[R] یا \f[CR]\-\-source\f[R] ارسال شده و \f[CR]\f[R] آدرس URL پایه مستندات API سکوی مربوطه است: .IP .EX doclet.platform.docs.= .EE برای نمونه، یک فایل properties حاوی URLها برای نگارش‌های ۱۵ تا ۱۷ ممکن است شامل خطوط زیر باشد: .IP .EX doclet.platform.docs.15=https://example.com/api/15 doclet.platform.docs.16=https://example.com/api/16 doclet.platform.docs.17=https://example.com/api/17 .EE اگر فایل properties حاوی ورودی مشخصی برای یک نگارش خاص نباشد، هیچ پیوند سکویی تولید نمی‌شود. .RE .TP \f[CR]\-linksource\f[R] یک نسخه HTML از هر فایل مبدأ (همراه با شماره خطوط) ایجاد کرده و پیوندهایی به آن‌ها از مستندات استاندارد HTML اضافه می‌کند. پیوندها برای کلاس‌ها، رابط‌ها، سازنده‌ها، متدها و فیلدهایی که اعلان آن‌ها در یک فایل مبدأ است ایجاد می‌شوند. در غیر این صورت پیوندها ایجاد نمی‌شوند، مانند مواردی برای سازنده‌های پیش‌فرض و کلاس‌های تولید‌شده. .RS این گزینه تمام جزئیات پیاده‌سازی خصوصی را در فایل‌های مبدأ گنجانده‌شده، شامل کلاس‌های خصوصی، فیلدهای خصوصی و بدنه متدهای خصوصی، بدون در نظر گرفتن گزینه‌های \f[CR]\-public\f[R]، \f[CR]\-package\f[R]، \f[CR]\-protected\f[R] و \f[CR]\-private\f[R] آشکار می‌سازد. مگر اینکه از گزینه \f[CR]\-private\f[R] نیز استفاده کنید، همه کلاس‌ها یا رابط‌های خصوصی از طریق پیوندها قابل دسترسی نیستند. هر پیوند روی نام شناسه در اعلان آن ظاهر می‌شود. برای نمونه، پیوند به کد مبدأ کلاس \f[CR]Button\f[R] روی کلمه \f[CR]Button\f[R] قرار خواهد گرفت:.IP .EX public class Button extends Component implements Accessible .EE پیوند به کد منبع متد \f[CR]getLabel\f[R] در کلاس \f[CR]Button\f[R] روی کلمهٔ \f[CR]getLabel\f[R] قرار دارد: .IP .EX public String getLabel() .EE .RE .TP \f[CR]\-\-main\-stylesheet\f[R] \f[I]file\f[R] یا \f[CR]\-stylesheetfile\f[R] \f[I]file\f[R] مسیر یک فایل شیوه‌نامهٔ (stylesheet) جایگزین را مشخص می‌کند که شامل تعاریف سبک‌های CSS استفاده‌شده در مستندات تولیدشده است. این گزینه به شما اجازه می‌دهد مقدار پیش‌فرض را لغو (override) کنید. اگر این گزینه را مشخص نکنید، ابزار \f[CR]javadoc\f[R] یک شیوه‌نامهٔ پیش‌فرض ایجاد کرده و از آن استفاده می‌کند. نام فایل می‌تواند هر نامی باشد و به \f[CR]stylesheet.css\f[R] محدود نیست. گزینهٔ \f[CR]\-\-main\-stylesheet\f[R] شکل ارجح است. .RS مثال خط فرمان: .IP .EX javadoc \-\-main\-stylesheet main_stylesheet.css pkg_foo .EE .RE .TP \f[CR]\-nocomment\f[R] کل بدنهٔ یادداشت‌ها (کامنت)، از جمله توضیحات اصلی و تمام تگ‌ها را نادیده گرفته و فقط اعلان‌ها (declarations) را تولید می‌کند. این گزینه به شما امکان می‌دهد از فایل‌های منبعی که در ابتدا برای هدف دیگری در نظر گرفته شده بودند، استفادهٔ مجدد کنید تا بتوانید در مراحل اولیهٔ یک پروژهٔ جدید، مستندات اسکلتی HTML تولید نمایید. .TP \f[CR]\-nodeprecated\f[R] از تولید هرگونه API منسوخ‌شده (deprecated) در مستندات جلوگیری می‌کند. این گزینه کار گزینهٔ \f[CR]\-nodeprecatedlist\f[R] را انجام می‌دهد و علاوه بر آن، در سراسر باقی‌ماندهٔ مستندات نیز هیچ API منسوخ‌شده‌ای تولید نمی‌کند. این ویژگی هنگام نوشتن کد، زمانی که نمی‌خواهید تمرکزتان با کدهای منسوخ‌شده به هم بخورد، مفید است. .TP \f[CR]\-nodeprecatedlist\f[R] از تولید فایلی که حاوی فهرست APIهای منسوخ‌شده است (\f[CR]deprecated\-list.html\f[R]) و پیوند مربوط به آن صفحه در نوار ناوبری جلوگیری می‌کند. ابزار \f[CR]javadoc\f[R] به تولید APIهای منسوخ‌شده در سراسر باقی‌ماندهٔ سند ادامه می‌دهد. این ویژگی زمانی مفید است که کد منبع شما حاوی هیچ API منسوخ‌شده‌ای نیست و می‌خواهید نوار ناوبری خلوت‌تر باشد. .TP \f[CR]\-\-no\-fonts\f[R] از گنجاندن فایل‌های فونت در مستندات تولیدشده جلوگیری می‌کند. این گزینه در صورتی مفید است که مستندات از یک شیوه‌نامهٔ سفارشی استفاده کند که فونت‌های پیش‌فرض را به کار نمی‌گیرد. .TP \f[CR]\-nohelp\f[R] پیوند \f[B]HELP\f[R] را در نوار ناوبری بالای هر صفحهٔ تولیدشده حذف می‌کند. .TP \f[CR]\-noindex\f[R] نمایه (index) را از اسناد تولیدشده حذف می‌کند. نمایه به صورت پیش‌فرض تولید می‌شود. .TP \f[CR]\-nonavbar\f[R] از تولید نوار ناوبری و سرآیند جلوگیری می‌کند. گزینهٔ \f[CR]\-nonavbar\f[R] هیچ تأثیری بر گزینهٔ \f[CR]\-bottom\f[R] ندارد. گزینهٔ \f[CR]\-nonavbar\f[R] زمانی مفید است که فقط به محتوا نیاز دارید و به ناوبری احتیاجی نیست، مانند مواقعی که فایل‌ها را صرفاً برای چاپ به PostScript یا PDF تبدیل می‌کنید. .TP \f[CR]\-\-no\-platform\-links\f[R] از تولید پیوندها به مستندات پلتفرم جلوگیری می‌کند. این پیوندها به طور پیش‌فرض تولید می‌شوند. .TP \f[CR]\-noqualifier\f[R] \f[I]name1\f[R]\f[CR],\f[R]\f[I]name2...\f[R] فهرست توصیف‌کننده‌ها (qualifiers) را از خروجی حذف می‌کند. نام بسته از جاهایی که نام کلاس‌ها یا رابط‌ها ظاهر می‌شود، برداشته خواهد شد. به دلایل تاریخی، \f[CR]:\f[R] می‌تواند در هر کجای آرگومان به عنوان جداکننده به جای \f[CR],\f[R] استفاده شود. .RS مثال زیر تمام توصیف‌کننده‌های بسته را حذف می‌کند: \f[CR]\-noqualifier all\f[R]. مثال زیر توصیف‌کننده‌های بسته‌های \f[CR]java.lang\f[R] و \f[CR]java.io\f[R] را حذف می‌کند: \f[CR]\-noqualifier java.lang:java.io\f[R]. مثال زیر توصیف‌کننده‌های بسته‌هایی که با \f[CR]java\f[R] شروع می‌شوند و زیربسته‌های \f[CR]com.sun\f[R] را حذف می‌کند، اما \f[CR]javax\f[R] را حذف نمی‌کند: \f[CR]\-noqualifier java.*:com.sun.*\f[R]. جایی که طبق رفتار قبلی یک توصیف‌کنندهٔ بسته ظاهر می‌شد، نام می‌تواند به شکل مناسب کوتاه‌تر شود. این قاعده چه از گزینهٔ \f[CR]\-noqualifier\f[R] استفاده شود و چه نشود، برقرار است. .RE .TP \f[CR]\-nosince\f[R] بخش‌های \f[CR]Since\f[R] برگرفته از تگ‌های \f[CR]since\f[R] را از مستندات تولیدشده حذف می‌کند. .TP \f[CR]\-notimestamp\f[R] برچسب زمانی (timestamp) را که در یک یادداشت HTML در نزدیکی بالای هر صفحه در HTML تولیدشده پنهان شده است، حذف می‌کند. گزینهٔ \f[CR]\-notimestamp\f[R] زمانی مفید است که می‌خواهید ابزار \f[CR]javadoc\f[R] را روی دو پایگاه منبع مختلف اجرا کرده و آن‌ها را مقایسه کنید؛ چرا که از ایجاد تفاوت به دلیل برچسب‌های زمانی جلوگیری می‌کند (که در غیر این صورت در هر صفحه تفاوت ایجاد می‌کرد). برچسب زمانی شامل شمارهٔ انتشار ابزار \f[CR]javadoc\f[R] است. .TP \f[CR]\-notree\f[R] صفحات سلسله‌مراتب کلاس‌ها و رابط‌ها را از اسناد تولیدشده حذف می‌کند. این‌ها صفحاتی هستند که با استفاده از پیوند \f[B]TREE\f[R] در نوار ناوبری به آن‌ها دسترسی پیدا می‌کنید. سلسله‌مراتب به طور پیش‌فرض تولید می‌شود. .TP \f[CR]\-\-override\-methods\f[R] (\f[CR]detail\f[R]|\f[CR]summary\f[R]) متدهای بازنویسی‌شده (overridden) را در بخش‌های جزئیات یا خلاصه مستندسازی می‌کند. حالت پیش‌فرض \f[CR]detail\f[R] است. .TP \f[CR]\-overview\f[R] \f[I]filename\f[R] مشخص می‌کند که ابزار \f[CR]javadoc\f[R] باید محتوای مستندات مرور کلی (overview) را از فایل مشخص‌شده توسط \f[I]filename\f[R] دریافت کرده و آن را در صفحهٔ مرور کلی (\f[CR]overview\-summary.html\f[R]) قرار دهد. اگر \f[I]filename\f[R] یک مسیر نسبی باشد، نسبت به دایرکتوری کاری فعلی ارزیابی می‌شود. .RS فایل می‌تواند یک فایل HTML با پسوند نام \f[CR].html\f[R]، یا یک فایل Markdown با پسوند نام \f[CR].md\f[R] باشد. اگر فایل یک فایل HTML باشد، محتوای مستندات مرور کلی از عنصر \f[CR]
\f[R] فایل (در صورت وجود) یا در صورت عدم وجود عنصر \f[CR]
\f[R] از عنصر \f[CR]\f[R] دریافت می‌شود. اگر فایل یک فایل Markdown باشد، تمام محتوای فایل استفاده می‌شود. عنوان صفحهٔ مرور کلی با \f[CR]\-doctitle\f[R] تنظیم می‌شود. \f[I]نکته:\f[R] نسخه‌های قدیمی‌تر ابزار \f[CR]javadoc\f[R] فرض می‌کردند که هرگونه استفاده از این گزینه برای یک فایل HTML است، و هر پسوندی را برای \f[I]filename\f[R] مجاز می‌دانستند. .RE .TP \f[CR]\-serialwarn\f[R] هشدارهای زمان کامپایل را برای تگ‌های ناموجود \f[CR]\(atserial\f[R] گزارش می‌کند. به طور پیش‌فرض، Javadoc هیچ هشدار سریال‌سازی‌ای گزارش نمی‌کند. از این گزینه برای نمایش هشدارهای سریال‌سازی استفاده کنید که به مستندسازی مناسب فیلدهای پیش‌فرض قابل سریال‌سازی و متدهای \f[CR]writeExternal\f[R] کمک می‌کند. .TP \f[CR]\-\-since\f[R] \f[I]release\f[R](\f[CR],\f[R]\f[I]release\f[R])* برای APIهایی که در \f[I]release\f[R]های مشخص‌شده اضافه شده یا به تازگی منسوخ شده‌اند، مستندات تولید می‌کند. .RS اگر تگ \f[CR]\(atsince\f[R] در یادداشت \f[CR]javadoc\f[R] یک عنصر در کد منبع مستندشده با یک \f[I]release\f[R] ارائه‌شده به عنوان آرگومان گزینه مطابقت داشته باشد، اطلاعات مربوط به آن عنصر و انتشاری که در آن اضافه شده است در صفحهٔ \(dqNew API\(dq گنجانده می‌شود. اگر صفحهٔ \(dqDeprecated API\(dq تولید شود و عنصر \f[CR]since\f[R] از یادداشت (annotation) \f[CR]java.lang.Deprecated\f[R] یک عنصر مستندشده با یک \f[I]release\f[R] در آرگومان‌های گزینه مطابقت داشته باشد، اطلاعات مربوط به انتشاری که عنصر در آن منسوخ شده است به صفحهٔ \(dqDeprecated API\(dq اضافه می‌شود. نسخه‌های انتشار با استفاده از مقایسهٔ رشته‌ای حساس به حروف کوچک و بزرگ مقایسه می‌شوند. .RE .TP \f[CR]\-\-since\-label\f[R] \f[I]text\f[R] متن (\f[I]text\f[R]) مورد استفاده در عنوان صفحهٔ \(dqNew API\(dq را مشخص می‌کند. این متن می‌تواند حاوی اطلاعاتی در مورد انتشارهای پوشش‌داده‌شده در صفحه باشد، مانند \(dqNew API in release 2.0\(dq یا \(dqNew API since release 1\(dq. .TP \f[CR]\-\-snippet\-path\f[R] \f[I]snippetpathlist\f[R] مسیرهای جستجو را برای یافتن فایل‌های مربوط به قطعه‌کدهای (snippets) خارجی مشخص می‌کند. \f[I]snippetpathlist\f[R] می‌تواند شامل چندین مسیر باشد که با جداکنندهٔ مسیر پلتفرم جدا شده‌اند (\f[CR];\f[R] در Windows و \f[CR]:\f[R] در سایر پلتفرم‌ها). داکلت استاندارد ابتدا زیردایرکتوری \f[CR]snippet\-files\f[R] را در بسته‌ای که حاوی قطعه‌کد است جستجو می‌کند و سپس تمام دایرکتوری‌های موجود در فهرست داده‌شده را جستجو می‌نماید..TP \f[CR]\-sourcetab\f[R] \f[I]tab\-length\f[R] تعداد فاصله‌هایی (spaces) را که هر tab در کد منبع استفاده می‌کند مشخص می‌کند. .TP \f[CR]\-\-spec\-base\-url\f[R] \f[I]url\f[R] آدرس پایه (base URL) را برای URLهای نسبی در تگ‌های \f[CR]\(atspec\f[R] مشخص می‌کند، تا هنگام تولید پیوندها به مشخصات فنی (specifications) خارجی استفاده شود. این آدرس می‌تواند یک URL مطلق یا یک URL نسبی باشد؛ در حالت دوم، نسبت به دایرکتوری پایهٔ فایل‌های خروجیِ تولیدشده ارزیابی می‌شود. مقدار پیش‌فرض معادل \f[CR]{\(atdocRoot}/../specs\f[R] است. .TP \f[CR]\-splitindex\f[R] فایل نمایه (index) را به چند فایل تقسیم می‌کند؛ به‌صورت الفبایی، یک فایل برای هر حرف، به‌علاوه یک فایل برای تمام مدخل‌های نمایه‌ای که با نمادهای غیرالفبایی شروع می‌شوند. .TP \f[CR]\-\-syntax\-highlight\f[R] برجسته‌سازی ساختار نحوی (syntax highlighting) را برای قطعه‌کدهای موجود در تگ‌های \f[CR]{\(atsnippet}\f[R] و عناصر \f[CR]
\f[R] فعال می‌کند.
برای snippetها، از صفت \f[CR]lang\f[R] برای تعیین زبان قطعه‌کدها استفاده می‌شود که مقدار پیش‌فرض آن برای snippetهای درون‌خطی (inline) برابر با \(dqjava\(dq است و برای snippetهای خارجی از پسوند فایل استخراج می‌شود.
در تگ‌های \f[CR]
\f[R] مربوط به HTML، صفت \f[CR]class\f[R] می‌تواند برای مشخص کردن زبان قطعه‌کدِ محصورشده مطابق شکل زیر استفاده شود:
.RS
.IP
.EX
...
.EE اگر هیچ‌یک از این صفت‌ها در دسترس نباشد، تشخیص خودکار زبان اعمال می‌شود. برای غیرفعال کردن برجسته‌سازی نحوی برای یک قطعه‌کد، زبان را با استفاده از یکی از سازوکارهای شرح‌داده‌شده در بالا روی \(dqtext\(dq تنظیم کنید. زبان‌ها و قالب‌های پشتیبانی‌شده توسط این گزینه عبارتند از Java، Properties، JSON، HTML و XML. .RE .TP \f[CR]\-tag\f[R] \f[I]name\f[R]:\f[I]locations\f[R]:\f[I]header\f[R] یک تگ سفارشی را با یک تک‌آرگومان مشخص می‌کند. برای این‌که ابزار \f[CR]javadoc\f[R] بتواند املای نام‌های تگ را بررسی کند، لازم است برای هر تگ سفارشی که در کد منبع وجود دارد یک گزینهٔ \f[CR]\-tag\f[R] لحاظ شود، و مواردی که در اجرای جاری در خروجی درج نمی‌شوند، غیرفعال گردند (با \f[CR]X\f[R]). علامت دونقطه (\f[CR]:\f[R]) همیشه جداکننده است. برای گنجاندن دونقطه در نام تگ، آن را با یک ممیز برعکس یا بک‌اسلش (\f[CR]\(rs\f[R]) فراردهی (escape) کنید. گزینهٔ \f[CR]\-tag\f[R] سرآیند تگ، \f[I]header\f[R]، را به‌صورت پررنگ (bold) چاپ می‌کند که در سطر بعدی متن حاصل از تک‌آرگومان آن آورده می‌شود. مشابه هر تگ بلوکی (block tag)، متن آرگومان می‌تواند شامل تگ‌های درون‌خطی باشد که آن‌ها نیز تفسیر می‌شوند. خروجی شبیه به تگ‌های تک‌آرگومانهٔ استاندارد مانند تگ‌های \f[CR]\(atreturn\f[R] و \f[CR]\(atauthor\f[R] است. حذف کردن مقدار \f[I]header\f[R] باعث می‌شود که \f[I]name\f[R] به‌عنوان سرآیند قرار گیرد. پارامتر \f[I]locations\f[R] فهرستی از نویسه‌ها است که انواع اعلان‌هایی را که تگ می‌تواند در آن‌ها به کار رود مشخص می‌کند. نویسه‌های زیر را می‌توان با حروف بزرگ یا کوچک استفاده کرد: .RS .IP \(bu 2 \f[CR]A\f[R]: همهٔ اعلان‌ها .IP \(bu 2 \f[CR]C\f[R]: سازنده‌ها (constructors) .IP \(bu 2 \f[CR]F\f[R]: فیلدها (fields) .IP \(bu 2 \f[CR]M\f[R]: متدها (methods) .IP \(bu 2 \f[CR]O\f[R]: صفحهٔ مرور کلی (overview) و سایر فایل‌های مستندات در زیردایرکتوری‌های \f[CR]doc\-files\f[R] .IP \(bu 2 \f[CR]P\f[R]: بسته‌ها (packages) .IP \(bu 2 \f[CR]S\f[R]: ماژول‌ها (modules) .IP \(bu 2 \f[CR]T\f[R]: نوع‌ها (کلاس‌ها و رابط‌ها) .IP \(bu 2 \f[CR]X\f[R]: هیچ‌جا: تگ غیرفعال است و نادیده گرفته خواهد شد ترتیبی که تگ‌ها در خط فرمان وارد می‌شوند، به‌عنوان ترتیب نمایش آن‌ها در خروجیِ تولیدشده به کار خواهد رفت. می‌توانید تگ‌های استاندارد را با ترتیبی که در خط فرمان مشخص شده با استفاده از گزینهٔ \f[CR]\-tag\f[R] بدون \f[I]locations\f[R] یا \f[I]header\f[R] لحاظ کنید. .RE .TP \f[CR]\-taglet\f[R] \f[I]class\f[R] نام کامل و رسمی (fully qualified name) مربوط به taglet مورد استفاده در تولید مستندات برای آن تگ را مشخص می‌کند. برای مقدار \f[I]class\f[R] از نام کامل استفاده کنید. این taglet همچنین تعداد آرگومان‌های متنی تگ سفارشی را تعیین می‌کند. مورد taglet آن آرگومان‌ها را دریافت کرده، پردازش می‌کند و خروجی را تولید می‌نماید. .RS مفهوم Taglet برای تگ‌های بلوکی یا درون‌خطی کاربرد دارد. آن‌ها می‌توانند هر تعداد آرگومان داشته باشند و رفتارهای سفارشی را پیاده‌سازی کنند، مانند پررنگ کردن متن، قالب‌بندی نقطه‌گلوله‌ها، نوشتن متن در یک فایل، یا راه‌اندازی فرآیندهای دیگر. یک Taglet تنها می‌تواند تعیین کند که یک تگ در کجا و با چه قالبی ظاهر شود. تمام تصمیم‌های دیگر توسط doclet گرفته می‌شود. یک taglet نمی‌تواند کارهایی مانند حذف یک نام کلاس از فهرست کلاس‌های گنجانده‌شده را انجام دهد. با این حال، می‌تواند اثرات جانبی (side effects) را اجرا کند؛ مانند چاپ متن تگ در یک فایل یا راه‌اندازی یک فرآیند دیگر. از گزینهٔ \f[CR]\-tagletpath\f[R] برای مشخص کردن مسیر taglet استفاده کنید. مثال زیر taglet مربوط به To Do را بعد از Parameters و قبل از Throws در صفحات تولیدشده درج می‌کند. .IP .EX \-taglet com.sun.tools.doclets.ToDoTaglet \-tagletpath /home/taglets \-tag return \-tag param \-tag todo \-tag throws \-tag see .EE به‌عنوان روش جایگزین، می‌توانید از گزینهٔ \f[CR]\-taglet\f[R] به جای گزینهٔ \f[CR]\-tag\f[R] متناظر آن استفاده کنید، اما ممکن است خواندن آن دشوارتر باشد. .RE .TP \f[CR]\-tagletpath\f[R] \f[I]tagletpathlist\f[R] مسیرهای جستجو برای یافتن فایل‌های کلاس taglet را مشخص می‌کند. پارامتر \f[I]tagletpathlist\f[R] می‌تواند شامل چندین مسیر باشد که با جداکنندهٔ مسیرهای پلتفرم از هم جدا می‌شوند (\f[CR];\f[R] در Windows؛ \f[CR]:\f[R] در سایر پلتفرم‌ها). ابزار \f[CR]javadoc\f[R] تمام زیردایرکتوری‌های مسیرهای مشخص‌شده را جستجو می‌کند. .TP \f[CR]\-top\f[R] \f[I]html\-code\f[R] متنی را که باید در بالای هر فایل خروجی قرار گیرد مشخص می‌کند. .TP \f[CR]\-use\f[R] صفحات مربوط به کاربرد کلاس‌ها و بسته‌ها را ایجاد می‌کند. یک صفحهٔ Use برای هر کلاس و بستهٔ مستندسازی‌شده لحاظ می‌کند. این صفحه شرح می‌دهد چه بسته‌ها، کلاس‌ها، متدها، سازنده‌ها و فیلدهایی از هر API مربوط به کلاس یا بستهٔ مشخص‌شده استفاده می‌کنند. به‌عنوان مثال برای کلاس C، مواردی که از کلاس C استفاده می‌کنند شامل زیرکلاس‌های C، فیلدهای تعریف‌شده از نوع C، متدهایی که C را برمی‌گردانند، و متدها و سازنده‌هایی با پارامترهایی از نوع C می‌شوند. برای نمونه، می‌توانید صفحهٔ Use را برای نوع \f[CR]String\f[R] بررسی کنید. از آنجا که متد \f[CR]getName\f[R] در کلاس \f[CR]java.awt.Font\f[R] مقداری از نوع \f[CR]String\f[R] برمی‌گرداند، این متد از \f[CR]String\f[R] استفاده می‌کند و بنابراین متد \f[CR]getName\f[R] در صفحهٔ Use مربوط به \f[CR]String\f[R] ظاهر می‌شود. این کار فقط کاربردهای API را مستند می‌کند، نه پیاده‌سازی داخلی آن را. هنگامی که یک متد در پیاده‌سازی خود از \f[CR]String\f[R] استفاده می‌کند، اما رشته‌ای را به‌عنوان آرگومان دریافت نمی‌کند یا رشته‌ای برنمی‌گرداند، استفاده از \f[CR]String\f[R] محسوب نمی‌شود. برای دسترسی به صفحهٔ تولیدشدهٔ Use، به کلاس یا بستهٔ مربوطه بروید و روی پیوند \f[B]USE\f[R] در نوار ناوبری کلیک کنید. .TP \f[CR]\-version\f[R] متن تمام تگ‌های \f[CR]version\f[R] را در مستندات تولیدشده لحاظ می‌کند. این متن به‌صورت پیش‌فرض حذف می‌شود. نکته: برای آگاهی از نسخهٔ ابزار \f[CR]javadoc\f[R] که استفاده می‌کنید، از گزینهٔ \f[CR]\-\-version\f[R] (با دو خط تیره) استفاده کنید. .TP \f[CR]\-windowtitle\f[R] \f[I]title\f[R] عنوانی را که باید در تگ \f[CR]\f[R] در HTML قرار گیرد مشخص می‌کند. متن مشخص‌شده در تگ \f[CR]title\f[R] در عنوان پنجره و در هر نشانک مرورگر (لیست علاقه‌مندی‌ها) که شخصی برای این صفحه ایجاد کند، نمایش داده می‌شود. این عنوان نباید حاوی هیچ تگ HTML باشد زیرا مرورگر آن‌ها را به‌درستی تفسیر نخواهد کرد. برای هر نقل‌قول داخلی در تگ \f[CR]title\f[R] از نویسه‌های فرار (escape characters) استفاده کنید. اگر گزینهٔ \f[CR]\-windowtitle\f[R] حذف شود، ابزار \f[CR]javadoc\f[R] از مقدار گزینهٔ \f[CR]\-doctitle\f[R] برای گزینهٔ \f[CR]\-windowtitle\f[R] استفاده می‌کند. برای مثال: \f[CR]javadoc \-windowtitle \(dqMy Library\(dq com.mypackage\f[R]..SS گزینه‌های اضافی برای Standard Doclet موارد زیر گزینه‌های اضافی ارائه‌شده توسط Standard Doclet هستند و ممکن است بدون اطلاع قبلی تغییر کنند. گزینه‌های اضافی کمتر استفاده می‌شوند یا به عنوان گزینه‌های پیشرفته در نظر گرفته می‌شوند. .TP \f[CR]\-\-date\f[R] \f[I]date\-and\-time\f[R] مقداری را برای برچسب زمانی (timestamp) صفحه‌های تولیدشده در قالب \f[B]ISO 8601\f[R] [https://www.iso.org/iso\-8601\-date\-and\-time\-format.html] مشخص می‌کند. مقدار مشخص‌شده باید در بازهٔ ۱۰ سال نسبت به تاریخ و زمان کنونی باشد. مشخص کردن هر دو گزینهٔ \f[CR]\-notimestamp\f[R] و \f[CR]\-\-date\f[R] به طور هم‌زمان یک خطا است. استفاده از یک مقدار مشخص موجب می‌شود که مستندات تولیدشده بتوانند بخشی از یک \f[B]ساخت بازتولیدپذیر\f[R] [https://reproducible\-builds.org] باشند. در صورت مشخص نشدن این گزینه، مقدار پیش‌فرض تاریخ و زمان کنونی خواهد بود. برای نمونه: .RS .IP .EX javadoc \-\-date 2022\-02\-01T17:41:59\-08:00 mypackage .EE .RE .TP \f[CR]\-\-legal\-notices\f[R] (\f[CR]default\f[R]|\f[CR]none\f[R]|\f[I]directory\f[R]) مکانی را مشخص می‌کند که فایل‌های حقوقی از آنجا در مستندات تولیدشده کپی شوند. اگر این گزینه مشخص نشود یا با مقدار \f[CR]default\f[R] استفاده گردد، فایل‌ها از مکان پیش‌فرض کپی می‌شوند. اگر آرگومان با مقدار \f[CR]none\f[R] استفاده شود، هیچ فایلی کپی نخواهد شد. هر آرگومان دیگر به عنوان دایرکتوری‌ای که فایل‌های حقوقی باید از آن کپی شوند تفسیر می‌شود. .TP \f[CR]\-\-no\-frames\f[R] این گزینه دیگر پشتیبانی نمی‌شود و یک هشدار صادر می‌کند. .TP \f[CR]\-Xdoclint\f[R] بررسی‌های توصیه‌شده برای مشکلات موجود در کامنت‌های مستندسازی را فعال می‌کند. .RS به طور پیش‌فرض، گزینهٔ \f[CR]\-Xdoclint\f[R] فعال است. با گزینهٔ \f[CR]\-Xdoclint:none\f[R] آن را غیرفعال کنید. برای جزئیات بیشتر، \f[B]DocLint\f[R] را ببینید. .RE .TP \f[CR]\-Xdoclint:\f[R]\f[I]flag\f[R],\f[I]flag\f[R],... بررسی‌های خاص برای انواع مختلف اشکالات در کامنت‌های مستندسازی را فعال یا غیرفعال می‌کند. .RS هر \f[I]flag\f[R] می‌تواند یکی از مقادیر \f[CR]all\f[R]، \f[CR]none\f[R]، یا \f[CR][\-]\f[R]\f[I]group\f[R] باشد که در آن \f[I]group\f[R] یکی از مقادیر زیر را دارد: \f[CR]accessibility\f[R]، \f[CR]html\f[R]، \f[CR]missing\f[R]، \f[CR]reference\f[R]، \f[CR]syntax\f[R]. برای جزئیات بیشتر دربارهٔ این مقادیر، \f[B]DocLint Groups\f[R] را ببینید. هنگام مشخص کردن دو یا چند پرچم، می‌توانید از یک گزینهٔ منفرد \f[CR]\-Xdoclint:...\f[R] شامل تمام پرچم‌های مورد نظر استفاده کنید، یا می‌توانید گزینه‌های متعددی را به کار ببرید که در هر کدام یک یا چند پرچم آمده است. برای نمونه، از هر یک از دستورهای زیر برای بررسی اشکالات HTML، نحو (syntax) و دسترس‌پذیری در فایل \f[CR]MyFile.java\f[R] استفاده کنید: .IP .EX javadoc \-Xdoclint:html \-Xdoclint:syntax \-Xdoclint:accessibility MyFile.java javadoc \-Xdoclint:html,syntax,accessibility MyFile.java .EE مثال‌های زیر نحوهٔ تغییر موارد گزارش‌شده توسط DocLint را نشان می‌دهند: .IP \(bu 2 \f[CR]\-Xdoclint:none\f[R] \-\-\- تمام بررسی‌ها را غیرفعال می‌کند .IP \(bu 2 \f[CR]\-Xdoclint:\f[R]\f[I]group\f[R] \-\-\- بررسی‌های گروه \f[I]group\f[R] را فعال می‌کند .IP \(bu 2 \f[CR]\-Xdoclint:all\f[R] \-\-\- تمام گروه‌های بررسی را فعال می‌کند .IP \(bu 2 \f[CR]\-Xdoclint:all,\-\f[R]\f[I]group\f[R] \-\-\- تمام بررسی‌ها به جز بررسی‌های گروه \f[I]group\f[R] را فعال می‌کند برای جزئیات بیشتر، \f[B]DocLint\f[R] را ببینید. .RE .TP \f[CR]\-Xdoclint/package:\f[R][\f[CR]\-\f[R]]\f[I]packages\f[R] بررسی‌ها را در بسته‌های مشخص فعال یا غیرفعال می‌کند. \f[I]packages\f[R] فهرستی از مشخص‌کننده‌های بسته است که با کاما از هم جدا شده‌اند. یک مشخص‌کننده بسته یا نام کامل یک بسته است یا پیشوندی از نام بسته به همراه \f[CR]*\f[R]، که به تمام زیربسته‌های آن بسته بسط می‌یابد. برای غیرفعال کردن بررسی‌ها برای بسته‌های مشخص‌شده، پیشوند \f[CR]\-\f[R] را به مشخص‌کننده بسته اضافه کنید. .RS برای جزئیات بیشتر، \f[B]DocLint\f[R] را ببینید. .RE .TP \f[CR]\-Xdocrootparent\f[R] \f[I]url\f[R] تمام موارد \f[CR]\(atdocRoot\f[R] را که پس از آن‌ها \f[CR]/..\f[R] در کامنت‌های مستندسازی آمده است، با \f[I]url\f[R] جایگزین می‌کند..SH DOCLINT ابزار DocLint امکان بررسی مشکلات احتمالی در کامنت‌های مستندسازی را فراهم می‌کند. مشکلات ممکن است بسته به شدت آن‌ها، به عنوان هشدار یا خطا گزارش شوند. برای نمونه، نبود یک کامنت ممکن است سبک نگارش بدی باشد که مستحق یک هشدار است، اما پیوند به یک اعلان ناشناخته در Java جدی‌تر بوده و سزاوار خطا است. مشکلات در \f[B]گروه‌ها\f[R] سازمان‌دهی شده‌اند، و می‌توان از گزینه‌ها برای فعال یا غیرفعال کردن پیام‌ها در یک یا چند گروه استفاده کرد. درون کد منبع، می‌توان پیام‌های یک یا چند گروه را با استفاده از حاشیه‌نویسی‌های \f[CR]\(atSuppressWarnings\f[R] \f[B]نادیده گرفت\f[R]. .PP هنگامی که از \f[CR]javadoc\f[R] فراخوانی می‌شود، DocLint به‌طور پیش‌فرض تمام کامنت‌هایی را که در مستندات تولیدشده به کار رفته‌اند بررسی می‌کند. از این رو، برای تعیین این‌که کدام اعلان‌ها و کدام کامنت‌های مستندسازی متناظر گنجانده شوند، به سایر گزینه‌های خط فرمان متکی است. \f[I]نکته:\f[R] این امر ممکن است بدین معنی باشد که حتی کامنت‌های برخی از اعضای خصوصی (private) کلاس‌های سریال‌پذیر (serializable) نیز در صورتی که نیاز به مستندسازی در صفحهٔ تولیدشدهٔ \f[CR]Serialized Forms\f[R] داشته باشند، بررسی خواهند شد. .PP در مقابل، هنگامی که DocLint از \f[CR]javac\f[R] فراخوانی می‌شود، صرفاً به گزینه‌های مختلف \f[CR]\-Xdoclint...\f[R] متکی است تا مشخص کند کدام کامنت‌های مستندسازی بررسی شوند. .PP ابزار DocLint تلاشی برای تصحیح ورودی نامعتبر نمی‌کند، بلکه تنها آن را گزارش می‌دهد. .PP \f[I]نکته:\f[R] ابزار DocLint کامل بودن این بررسی‌ها را تضمین نمی‌کند. به‌ویژه، این ابزار یک اعتبارسنج کامل انطباق با HTML نیست. هدف این است که تنها خطاهای رایج به روشی آسان گزارش شوند. .SS "گروه‌ها (GROUPS)" بررسی‌های انجام‌شده توسط DocLint در گروه‌هایی سازمان‌دهی شده‌اند. هشدارها و خطاهای هر گروه را می‌توان با گزینه‌های خط فرمان فعال یا غیرفعال کرد، یا با استفاده از حاشیه‌نویسی‌های \f[CR]\(atSuppressWarnings\f[R] نادیده گرفت. .PP گروه‌ها به شرح زیر هستند: .IP \(bu 2 \f[CR]accessibility\f[R] \-\-\- بررسی مشکلات مربوط به دسترسی‌پذیری. برای نمونه، مشخص نشدن ویژگی \f[CR]alt\f[R] در یک عنصر \f[CR]<img>\f[R]، یا مشخص نشدن ویژگی‌های caption یا summary در یک عنصر \f[CR]<table>\f[R]. .RS 2 .PP اگر انتظار رود که یک ابزار اعتبارسنجی پایین‌دستی در فایل‌های تولیدشده توسط \f[CR]javadoc\f[R] خطایی گزارش کند، مشکلات به عنوان خطا گزارش می‌شوند. .PP برای مرجع، \f[B]دستورالعمل‌های دسترسی‌پذیری محتوای وب\f[R] [https://www.w3.org/WAI/standards\-guidelines/wcag] را ببینید. .RE .IP \(bu 2 \f[CR]html\f[R] \-\-\- تشخیص مشکلات رایج و سطح‌بالای HTML. برای نمونه، قرار دادن عناصر بلوکی درون عناصر درون‌خطی، یا نبستن عناصری که به تگ پایانی نیاز دارند. .RS 2 .PP اگر انتظار رود که یک ابزار اعتبارسنجی پایین‌دستی در فایل‌های تولیدشده توسط \f[CR]javadoc\f[R] خطایی گزارش کند، مشکلات به عنوان خطا گزارش می‌شوند. .PP برای مرجع، \f[B]استاندارد زندهٔ HTML\f[R] [https://html.spec.whatwg.org/multipage] را ببینید. .RE .IP \(bu 2 \f[CR]missing\f[R] \-\-\- بررسی نبود کامنت‌ها یا تگ‌های مستندسازی. برای نمونه، نبود کامنت در اعلان یک کلاس، یا نبود تگ \f[CR]\(atparam\f[R] یا \f[CR]\(atreturn\f[R] در کامنت اعلان یک متد. .RS 2 .PP مشکلات مربوط به موارد ناموجود معمولاً به عنوان هشدار گزارش می‌شوند، زیرا بعید است توسط ابزارهای اعتبارسنجی پایین‌دستی که ممکن است برای بررسی خروجی تولیدشده توسط \f[CR]javadoc\f[R] استفاده شوند، به عنوان خطا گزارش شوند. .RE .IP \(bu 2 \f[CR]reference\f[R] \-\-\- بررسی مشکلات مربوط به ارجاعات به عناصر Java API از طریق تگ‌های کامنت مستندسازی. برای نمونه، مرجع موجود در \f[CR]\(atsee\f[R] یا \f[CR]{\(atlink ...}\f[R] یافت نشود، یا نام نامعتبری برای \f[CR]\(atparam\f[R] یا \f[CR]\(atthrows\f[R] داده شده باشد. .RS 2 .PP مشکلات معمولاً به عنوان خطا گزارش می‌شوند؛ زیرا هرچند ممکن است این مشکل باعث بروز نقص در فایل‌های تولیدشده نشود، اما نویسنده احتمالاً مرتکب اشتباهی شده است که منجر به مستندات نادرست یا غیرمنتظره خواهد شد. .RE .IP \(bu 2 \f[CR]syntax\f[R] \-\-\- بررسی مشکلات نحوی سطح‌پایین در کامنت‌های مستندسازی. برای نمونه، علامت‌های نامتقارن یا فرار داده‌نشدهٔ بزرگ‌تر و کوچک‌تر (\f[CR]<\f[R] و \f[CR]>\f[R])، علامت‌های امپرسند (\f[CR]&\f[R]) و تگ‌های نامعتبر کامنت مستندسازی. .RS 2 .PP مشکلات معمولاً به عنوان خطا گزارش می‌شوند زیرا ممکن است به مستندات نادرست یا غیرمنتظره منجر شوند. .RE.SS "فرونشاندن پیام‌ها (Suppressing Messages)" ابزار DocLint دو رشته را که ممکن است در آرگومان‌های یادداشت \f[CR]\(atSuppressWarnings\f[R] وجود داشته باشند بررسی کرده و تشخیص می‌دهد. .IP \(bu 2 \f[CR]doclint\f[R] .IP \(bu 2 \f[CR]doclint:\f[R]\f[I]LIST\f[R] .PP که در آن \f[I]LIST\f[R] فهرستی از یک یا چند مورد جداشده با کاما از گزینه‌های \f[CR]accessibility\f[R]، \f[CR]html\f[R]، \f[CR]missing\f[R]، \f[CR]reference\f[R]، \f[CR]syntax\f[R] است. .PP نام‌های موجود در \f[I]LIST\f[R] همان نام‌های \f[B]گروه\f[R] (\f[B]group\f[R]) پشتیبانی‌شده توسط گزینه خط فرمان \f[CR]\-Xdoclint\f[R] برای \f[CR]javac\f[R] و \f[CR]javadoc\f[R] هستند. (این همان قراردادی است که توسط گزینه \f[CR]\-Xlint\f[R] در \f[CR]javac\f[R] و نام‌های متناظر پشتیبانی‌شده توسط \f[CR]\(atSuppressWarnings\f[R] رعایت می‌شود.) .PP نام‌های موجود در \f[I]LIST\f[R] را می‌توان به طور معادل در آرگومان‌های جداگانه یادداشت نیز مشخص کرد. برای مثال، موارد زیر معادل یکدیگرند: .IP \(bu 2 \f[CR]\(atSuppressWarnings(\(dqdoclint:accessibility,missing\(dq)\f[R] .IP \(bu 2 \f[CR]\(atSuppressWarnings(\(dqdoclint:accessibility\(dq, \(dqdoclint:missing\(dq)\f[R] .PP هنگامی که DocLint مشکلی را در یک کامنت مستندسازی تشخیص می‌دهد، وجود \f[CR]\(atSuppressWarnings\f[R] را روی اعلان مربوطه و تمام اعلان‌های دربرگیرنده از نظر لغوی (lexically enclosing) بررسی می‌کند. اگر چنین یادداشتی حاوی رشته ساده \f[CR]doclint\f[R] یا شکل طولانی‌تر \f[CR]doclint:LIST\f[R] یافت شود که در آن \f[I]LIST\f[R] حاوی نام گروه مربوط به آن مشکل باشد، از مشکل صرف‌نظر خواهد شد. .PP \f[I]نکته:\f[R] همانند سایر کاربردهای \f[CR]\(atSuppressWarnings\f[R]، استفاده از این یادداشت روی اعلان یک ماژول یا بسته (package) فقط بر همان اعلان اثر می‌گذارد؛ و بر محتویات آن ماژول یا بسته در سایر فایل‌های منبع تأثیری ندارد. .PP تمامی پیام‌های مربوط به یک مشکل با وجود یادداشت مناسب \f[CR]\(atSuppressWarnings\f[R] فرونشانده می‌شوند: این امر شامل خطاها و همچنین هشدارها است. .PP \f[I]نکته:\f[R] تنها \f[I]فرونشاندن\f[R] پیام‌ها امکان‌پذیر است. اگر یادداشت \f[CR]\(atSuppressWarnings(\(dqdoclint\(dq)\f[R] در یک اعلان سطح بالا (top\-level) مشخص شود، تمام پیام‌های DocLint برای آن اعلان و هر اعلان محصور در آن فرونشانده خواهند شد؛ فعال‌سازی مجدد و انتخابی پیام‌ها برای مشکلات موجود در اعلان‌های محصور ممکن نیست. .SS "مقایسه با ابزارهای اعتبارسنجی پایین‌دستی (Comparison with downstream validation tools)" ابزار DocLint یک ابزار تعبیه‌شده در \f[CR]javac\f[R] و \f[CR]javadoc\f[R] است که محتوای کامنت‌های مستندسازی را همان‌گونه که در فایل‌های منبع هستند بررسی می‌کند. در مقابل، از ابزارهای اعتبارسنجی پایین‌دستی می‌توان برای اعتبارسنجی خروجی تولیدشده از آن کامنت‌های مستندسازی توسط \f[CR]javadoc\f[R] و doclet استاندارد استفاده کرد. .PP اگرچه در کارکردها تا حدی هم‌پوشانی وجود دارد، اما این دو سازوکار متفاوت هستند و هر یک نقاط قوت و ضعف خود را دارند. .IP \(bu 2 ابزارهای اعتبارسنجی پایین‌دستی می‌توانند نتیجه نهایی هر مستندات تولیدشده را همان‌طور که توسط کاربر نهایی دیده خواهد شد بررسی کنند. این امر شامل محتوا از تمام منابع، از جمله کامنت‌های مستندسازی، خودِ doclet استاندارد، tagletهای ارائه‌شده توسط کاربر و محتوای ارائه‌شده از طریق گزینه‌های خط فرمان می‌شود. از آنجا که چنین ابزارهایی صفحات کامل HTML را تجزیه و تحلیل می‌کنند، می‌توانند بررسی‌های کامل‌تری نسبت به DocLint انجام دهند. با این حال، هنگامی که مشکلی در صفحات تولیدشده یافت می‌شود، ردیابی دقیق این که در کجای خط لوله ساخت (build pipeline) مشکل باید رفع شود، می‌تواند دشوارتر باشد. .IP \(bu 2 ابزار DocLint محتوای کامنت‌های مستندسازی را در فایل‌های منبع بررسی می‌کند. این امر شناسایی موقعیت دقیق هر مشکلی که ممکن است پیدا شود را بسیار آسان می‌سازد. ابزار DocLint همچنین می‌تواند برخی خطاهای معنایی را در کامنت‌های مستندسازی تشخیص دهد که ابزارهای پایین‌دستی قادر به تشخیص آن‌ها نیستند؛ مانند کامنت‌های مفقود، استفاده از برچسب \f[CR]\(atreturn\f[R] در متدی با مقدار بازگشتی \f[CR]void\f[R]، یا برچسب \f[CR]\(atparam\f[R] برای توصیف یک پارامتر ناموجود. اما با توجه به ماهیت خود، DocLint نمی‌تواند مشکلاتی مانند پیوندهای مفقود، خطاهای موجود در tagletهای سفارشیِ ارائه‌شده توسط کاربر، یا مشکلات درون خودِ doclet استاندارد را گزارش دهد. همچنین نمی‌تواند خطاها را در کامنت‌های مستندسازی در مرزهای میان محتوای موجود در یک کامنت مستندسازی و محتوای تولیدشده توسط یک taglet سفارشی به طور قابل‌اطمینان شناسایی کند.