.\" Copyright (c) 1994, 2022, Oracle and/or its affiliates. All rights reserved. .\" DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. .\" .\" This code is free software; you can redistribute it and/or modify it .\" under the terms of the GNU General Public License version 2 only, as .\" published by the Free Software Foundation. .\" .\" This code is distributed in the hope that it will be useful, but WITHOUT .\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or .\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License .\" version 2 for more details (a copy is included in the LICENSE file that .\" accompanied this code). .\" .\" You should have received a copy of the GNU General Public License version .\" 2 along with this work; if not, write to the Free Software Foundation, .\" Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. .\" .\" Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA .\" or visit www.oracle.com if you need additional information or have any .\" questions. .\" .\" Automatically generated by Pandoc 2.19.2 .\" .\" Define V font for inline verbatim, using C font in formats .\" that render this, and otherwise B font. .ie "\f[CB]x\f[R]"x" \{\ . ftr V B . ftr VI BI . ftr VB B . ftr VBI BI .\} .el \{\ . ftr V CR . ftr VI CI . ftr VB CB . ftr VBI CBI .\} .TH "JAVADOC" "1" "2023" "JDK 21" "JDK Commands" .hy .SH "نام (NAME)" .PP javadoc \- ابزار تولید صفحات HTML مستندات API از فایل‌های منبع جاوا (نسخه ۲۱) .SH "خلاصه دستور (SYNOPSIS)" .PP \f[V]javadoc\f[R] [\f[I]گزینه‌ها\f[R]] [\f[I]نام‌های_بسته\f[R]] [\f[I]فایل‌های_منبع\f[R]] [\f[V]\[at]\f[R]\f[I]فایل‌ها\f[R]] .TP \f[I]گزینه‌ها (options)\f[R] گزینه‌های خط فرمان را مشخص می‌کند که با فاصله از هم جدا می‌شوند. بخش‌های \f[B]گزینه‌های استاندارد \f[VB]javadoc\f[B]\f[R]، \f[B]گزینه‌های اضافی \f[VB]javadoc\f[B]\f[R]، \f[B]گزینه‌های استاندارد برای داکلت استاندارد\f[R]، و \f[B]گزینه‌های اضافی برای داکلت استاندارد\f[R] را ببینید. .TP \f[I]نام‌های_بسته (packagenames)\f[R] نام بسته‌هایی را که می‌خواهید مستندسازی کنید مشخص می‌کند که با فاصله از هم جدا شده‌اند، برای مثال \f[V]java.lang java.lang.reflect java.awt\f[R]. اگر می‌خواهید زیربسته‌ها را نیز مستندسازی کنید، از گزینه \f[V]-subpackages\f[R] برای مشخص کردن بسته‌ها استفاده کنید. .RS .PP به‌طور پیش‌فرض، \f[V]javadoc\f[R] به دنبال بسته‌های مشخص‌شده در دایرکتوری جاری و زیردایرکتوری‌های آن می‌گردد. از گزینه \f[V]-sourcepath\f[R] برای مشخص کردن فهرست دایرکتوری‌های محل جستجوی بسته‌ها استفاده کنید. .RE .TP \f[I]فایل‌های_منبع (sourcefiles)\f[R] نام فایل‌های منبع جاوا را که می‌خواهید مستندسازی کنید مشخص می‌کند که با فاصله از هم جدا شده‌اند، برای مثال \f[V]Class.java Object.java Button.java\f[R]. به‌طور پیش‌فرض، \f[V]javadoc\f[R] به دنبال کلاس‌های مشخص‌شده در دایرکتوری جاری می‌گردد. با این حال، می‌توانید مسیر کامل فایل کلاس را مشخص کرده و از نویسه‌های عام (wildcard) استفاده کنید، برای مثال \f[V]/home/src/java/awt/Graphics*.java\f[R]. همچنین می‌توانید مسیر را نسبت به دایرکتوری جاری مشخص کنید. .TP \f[V]\[at]\f[R]\f[I]فایل‌ها (files)\f[R] نام فایل‌هایی را مشخص می‌کند که شامل فهرستی از گزینه‌های ابزار \f[V]javadoc\f[R]، نام بسته‌ها و نام فایل‌های منبع به هر ترتیبی هستند. .SH "توضیحات (DESCRIPTION)" .PP ابزار \f[V]javadoc\f[R] اعلان‌ها و کامنت‌های مستندسازی را در مجموعه‌ای از فایل‌های منبع جاوا تجزیه کرده و صفحات HTML متناظری تولید می‌کند که (به‌طور پیش‌فرض) کلاس‌های عمومی و محافظت‌شده، کلاس‌های تو در تو و بی‌نام (اما نه کلاس‌های داخلی ناشناس)، رابط‌ها، سازنده‌ها، متدها و فیلدها را توصیف می‌کنند. می‌توانید از ابزار \f[V]javadoc\f[R] برای تولید مستندات API یا مستندات پیاده‌سازی برای مجموعه‌ای از فایل‌های منبع استفاده کنید. .PP می‌توانید ابزار \f[V]javadoc\f[R] را روی کل بسته‌ها، فایل‌های منبع منفرد، یا هر دو اجرا کنید. هنگام مستندسازی کل بسته‌ها، می‌توانید از گزینه \f[V]-subpackages\f[R] یا برای پیمایش بازگشتی یک دایرکتوری و زیردایرکتوری‌های آن، یا برای ارسال فهرستی صریح از نام‌های بسته استفاده کنید. هنگامی که فایل‌های منبع منفرد را مستندسازی می‌کنید، فهرستی از نام‌های فایل منبع جاوا را ارسال کنید. .SS "انطباق و سازگاری (Conformance)" .PP داکلت استاندارد (Standard Doclet) محتوای کامنت‌های مستندسازی را برای انطباق اعتبارسنجی نمی‌کند و تلاشی برای تصحیح خطاهای موجود در کامنت‌های مستندسازی انجام نمی‌دهد. به هر کسی که javadoc را اجرا می‌کند توصیه می‌شود از مشکلاتی که ممکن است هنگام تولید خروجی ناسازگار یا خروجی حاوی محتوای اجرایی مانند جاوااسکریپت رخ دهد آگاه باشد. داکلت استاندارد ویژگی \f[B]DocLint\f[R] را برای کمک به توسعه‌دهندگان در تشخیص مشکلات رایج در کامنت‌های مستندسازی ارائه می‌دهد؛ اما همچنین توصیه می‌شود خروجی تولیدشده با ابزارهای مناسب اعتبارسنجی انطباق و سایر ابزارهای بررسی ارزیابی شود. .PP برای جزئیات بیشتر در مورد الزامات انطباق برای اسناد HTML5، بخش \f[B]Conformance requirements\f[R] [https://www.w3.org/TR/html5/infrastructure.html#conformance-requirements] در مشخصات HTML5 را ببینید. برای جزئیات بیشتر در مورد مسائل امنیتی مرتبط با صفحات وب، صفحه \f[B]پروژه امنیت برنامه‌های کاربردی وب باز (OWASP)\f[R] [https://www.owasp.org] را ببینید. .SH "گزینه‌ها (OPTIONS)" .PP دستور \f[V]javadoc\f[R] از گزینه‌های خط فرمان برای هر دو ابزار اصلی \f[V]javadoc\f[R] و داکلت انتخاب‌شده فعلی پشتیبانی می‌کند. اگر داکلت دیگری مشخص نشده باشد، از داکلت استاندارد (Standard Doclet) استفاده می‌شود. .PP گزینه‌های به سبک GNU (یعنی آن‌هایی که با \f[V]--\f[R] شروع می‌شوند) می‌توانند به جای نویسه‌های فاصله، از علامت مساوی (\f[V]=\f[R]) برای جدا کردن نام گزینه از مقدار آن استفاده کنند. .SS "گزینه‌های استاندارد \f[V]javadoc\f[R]" .PP گزینه‌های اصلی \f[V]javadoc\f[R] زیر معادل گزینه‌های متناظر \f[V]javac\f[R] هستند. برای توضیحات دقیق استفاده از این گزینه‌ها، بخش \f[I]گزینه‌های استاندارد\f[R] در \f[B]javac\f[R] را ببینید: .IP \[bu] 2 \f[V]--add-modules\f[R] .IP \[bu] 2 \f[V]-bootclasspath\f[R] .IP \[bu] 2 \f[V]--class-path\f[R]، \f[V]-classpath\f[R]، یا \f[V]-cp\f[R] .IP \[bu] 2 \f[V]--enable-preview\f[R] .IP \[bu] 2 \f[V]-encoding\f[R] .IP \[bu] 2 \f[V]-extdirs\f[R] .IP \[bu] 2 \f[V]--limit-modules\f[R] .IP \[bu] 2 \f[V]--module\f[R] .IP \[bu] 2 \f[V]--module-path\f[R] یا \f[V]-p\f[R] .IP \[bu] 2 \f[V]--module-source-path\f[R] .IP \[bu] 2 \f[V]--release\f[R] .IP \[bu] 2 \f[V]--source\f[R] یا \f[V]-source\f[R] .IP \[bu] 2 \f[V]--source-path\f[R] یا \f[V]-sourcepath\f[R] .IP \[bu] 2 \f[V]--system\f[R] .IP \[bu] 2 \f[V]--upgrade-module-path\f[R] .PP گزینه‌های زیر گزینه‌های اصلی \f[V]javadoc\f[R] هستند که معادل گزینه متناظری در \f[V]javac\f[R] نیستند: .TP \f[V]-breakiterator\f[R] جمله اول را با \f[V]BreakIterator\f[R] محاسبه می‌کند. جمله اول در خلاصه بسته، کلاس، یا عضو و همچنین در نمایه الفبایی کپی می‌شود. کلاس \f[V]BreakIterator\f[R] برای تعیین پایان جمله برای همه زبان‌ها به جز انگلیسی استفاده می‌شود. .RS .IP \[bu] 2 الگوریتم پیش‌فرض پایان جمله انگلیسی --- در نقطه همراه با یک فاصله یا یک تگ بلوکی HTML مانند \f[V]

\f[R] متوقف می‌شود. .IP \[bu] 2 الگوریتم پایان جمله Breakiterator --- در نقطه، علامت سوال، یا علامت تعجب همراه با یک فاصله زمانی که کلمه بعدی با یک حرف بزرگ شروع می‌شود متوقف می‌شود. این برای رسیدگی به اکثر اختصارات در نظر گرفته شده است (مانند \[dq]The serial no. is valid\[dq]، اما \[dq]Mr. Smith\[dq] را پردازش نمی‌کند). گزینه \f[V]-breakiterator\f[R] در تگ‌های HTML یا جملاتی که با اعداد یا نمادها شروع می‌شوند متوقف نمی‌شود. این الگوریتم در آخرین نقطه در \f[V]../filename\f[R] متوقف می‌شود، حتی زمانی که در یک تگ HTML جاسازی شده باشد. .RE .TP \f[V]-doclet\f[R] \f[I]کلاس\f[R] خروجی را با استفاده از یک داکلت جایگزین تولید می‌کند. از نام کاملاً واجد شرایط (fully qualified) استفاده کنید. این داکلت محتوا را تعریف کرده و خروجی را قالب‌بندی می‌کند. اگر گزینه \f[V]-doclet\f[R] استفاده نشود، ابزار \f[V]javadoc\f[R] از داکلت استاندارد برای تولید فرمت پیش‌فرض HTML استفاده می‌کند. این کلاس باید شامل متد \f[V]start(Root)\f[R] باشد. مسیر این کلاس شروع توسط گزینه \f[V]-docletpath\f[R] تعریف می‌شود. .TP \f[V]-docletpath\f[R] \f[I]مسیر\f[R] محل یافتن فایل‌های کلاس داکلت (مشخص‌شده با گزینه \f[V]-doclet\f[R]) و هر فایل JAR وابسته به آن را مشخص می‌کند. اگر فایل کلاس شروع در یک فایل JAR باشد، این گزینه مسیر آن فایل JAR را مشخص می‌کند. می‌توانید یک مسیر مطلق یا یک مسیر نسبی نسبت به دایرکتوری جاری مشخص کنید. اگر \f[V]classpathlist\f[R] شامل چندین مسیر یا فایل JAR باشد، باید با دونقطه (\f[V]:\f[R]) در لینوکس و نقطه‌ویرگول (\f[V];\f[R]) در ویندوز از هم جدا شوند. زمانی که کلاس شروع \f[V]doclet\f[R] از قبل در مسیر جستجو باشد، این گزینه ضروری نیست. .TP \f[V]-exclude\f[R] \f[I]فهرست_بسته‌ها\f[R] به‌طور بدون قید و شرط، بسته‌های مشخص‌شده و زیربسته‌های آن‌ها را از فهرستی که توسط \f[V]-subpackages\f[R] تشکیل شده است مستثنی می‌کند. این گزینه آن بسته‌ها را حتی اگر توسط یک گزینه \f[V]-subpackages\f[R] قبلی یا بعدی گنجانده شده باشند، حذف می‌کند. .RS .PP مثال زیر شامل \f[V]java.io\f[R]، \f[V]java.util\f[R]، و \f[V]java.math\f[R] (در میان دیگران) می‌شود، اما بسته‌های ریشه‌دار در \f[V]java.net\f[R] و \f[V]java.lang\f[R] را مستثنی می‌کند. توجه داشته باشید که این مثال‌ها \f[V]java.lang.ref\f[R] را که یک زیربسته از \f[V]java.lang\f[R] است، مستثنی می‌کنند. .IP \[bu] 2 \f[B]لینوکس و macOS:\f[R] .RS 2 .IP .nf \f[CB] javadoc -sourcepath /home/user/src -subpackages java -exclude java.net:java.lang \f[R] .fi .RE .IP \[bu] 2 \f[B]ویندوز:\f[R] .RS 2 .IP .nf \f[CB] javadoc -sourcepath \[rs]user\[rs]src -subpackages java -exclude java.net:java.lang \f[R] .fi .RE .RE .TP \f[V]--expand-requires\f[R] \f[I]مقدار\f[R] به ابزار javadoc دستور می‌دهد تا مجموعه ماژول‌هایی را که باید مستندسازی شوند گسترش دهد. به‌طور پیش‌فرض، فقط ماژول‌هایی که صریحاً در خط فرمان داده شده‌اند مستندسازی می‌شوند. از مقادیر زیر پشتیبانی می‌کند: .RS .IP \[bu] 2 \f[V]transitive\f[R]: علاوه بر این، تمام وابستگی‌های انتقالی (transitive) مورد نیاز آن ماژول‌ها را نیز شامل می‌شود. .IP \[bu] 2 \f[V]all\f[R]: تمام وابستگی‌ها را شامل می‌شود. .RE .TP \f[V]--help\f[R]، \f[V]-help\f[R]، \f[V]-h\f[R]، یا \f[V]-?\f[R] خلاصه‌ای از گزینه‌های استاندارد را چاپ می‌کند. .TP \f[V]--help-extra\f[R] یا \f[V]-X\f[R] خلاصه‌ای از مجموعه گزینه‌های اضافی را چاپ می‌کند. .TP \f[V]-J\f[R]\f[I]فلگ\f[R] \f[I]فلگ\f[R] را مستقیماً به محیط زمان اجرای جاوا (JRE) که ابزار \f[V]javadoc\f[R] را اجرا می‌کند ارسال می‌کند. برای مثال، اگر باید اطمینان حاصل کنید که سیستم ۳۲ مگابایت حافظه برای پردازش مستندات تولیدشده کنار می‌گذارد، گزینه \f[V]-Xmx\f[R] را به این صورت فراخوانی می‌کنید: \f[V]javadoc -J-Xmx32m -J-Xms32m com.mypackage\f[R]. توجه داشته باشید که \f[V]-Xms\f[R] اختیاری است زیرا فقط اندازه حافظه اولیه را تنظیم می‌کند، که زمانی مفید است که حداقل مقدار حافظه مورد نیاز را می‌دانید. .RS .PP هیچ فاصله‌ای بین \f[V]J\f[R] و \f[V]فلگ\f[R] وجود ندارد. .PP از گزینه \f[V]-version\f[R] برای گزارش نسخه JRE مورد استفاده برای اجرای ابزار \f[V]javadoc\f[R] استفاده کنید. .IP .nf \f[CB] javadoc -J-version java version \[dq]17\[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) \f[R] .fi .RE .TP \f[V]-locale\f[R] \f[I]نام\f[R] محلی (locale) را که ابزار \f[V]javadoc\f[R] هنگام تولید مستندات استفاده می‌کند مشخص می‌سازد. آرگومان نام محلی است، همان‌طور که در مستندات \f[V]java.util.Locale\f[R] شرح داده شده است، مانند \f[V]en_US\f[R] (انگلیسی، ایالات متحده) یا \f[V]en_US_WIN\f[R] (گونه ویندوز). .RS .PP مشخص کردن یک محلی باعث می‌شود ابزار \f[V]javadoc\f[R] فایل‌های منبع آن محلی را برای پیام‌هایی مانند رشته‌های نوار ناوبری، سربرگ‌های فهرست‌ها و جداول، محتوای فایل راهنما، کامنت‌های موجود در فایل \f[V]stylesheet.css\f[R] و غیره انتخاب کند. همچنین ترتیب مرتب‌سازی فهرست‌های مرتب‌شده بر اساس الفبا و جداکننده جمله را برای تعیین پایان جمله اول مشخص می‌کند. گزینه \f[V]-locale\f[R] محلی متن کامنت مستندسازی مشخص‌شده در فایل‌های منبع کلاس‌های مستندشده را تعیین نمی‌کند. .RE .TP \f[V]-package\f[R] فقط کلاس‌ها و اعضای بسته، محافظت‌شده (protected) و عمومی (public) را نمایش می‌دهد. .TP \f[V]-private\f[R] همه کلاس‌ها و اعضا را نمایش می‌دهد. .TP \f[V]-protected\f[R] فقط کلاس‌ها و اعضای محافظت‌شده و عمومی را نمایش می‌دهد. این حالت پیش‌فرض است. .TP \f[V]-public\f[R] فقط کلاس‌ها و اعضای عمومی را نمایش می‌دهد. .TP \f[V]-quiet\f[R] پیام‌ها را خاموش می‌کند تا فقط هشدارها و خطاها ظاهر شوند تا مشاهده آن‌ها آسان‌تر شود. همچنین رشته \f[V]version\f[R] را سرکوب می‌کند. .TP \f[V]--show-members\f[R] \f[I]مقدار\f[R] مشخص می‌کند کدام اعضا (فیلدها یا متدها) مستندسازی شوند، که در آن \f[I]مقدار\f[R] می‌تواند هر یک از موارد زیر باشد: .RS .IP \[bu] 2 \f[V]public\f[R] --- فقط اعضای عمومی را نمایش می‌دهد .IP \[bu] 2 \f[V]protected\f[R] --- اعضای عمومی و محافظت‌شده را نمایش می‌دهد؛ این حالت پیش‌فرض است .IP \[bu] 2 \f[V]package\f[R] --- اعضای عمومی، محافظت‌شده و بسته را نمایش می‌دهد .IP \[bu] 2 \f[V]private\f[R] --- تمام اعضا را نمایش می‌دهد .RE .TP \f[V]--show-module-contents\f[R] \f[I]مقدار\f[R] سطح جزئیات مستندسازی اعلان‌های ماژول را مشخص می‌کند، که در آن \f[I]مقدار\f[R] می‌تواند \f[V]api\f[R] یا \f[V]all\f[R] باشد. .TP \f[V]--show-packages\f[R] \f[I]مقدار\f[R] مشخص می‌کند کدام بسته‌های ماژول مستندسازی شوند، که در آن \f[I]مقدار\f[R] می‌تواند بسته‌های صادرشده (\f[V]exported\f[R]) یا تمام بسته‌ها (\f[V]all\f[R]) باشد. .TP \f[V]--show-types\f[R] \f[I]مقدار\f[R] مشخص می‌کند کدام نوع‌ها (کلاس‌ها، رابط‌ها و غیره) مستندسازی شوند، که در آن \f[I]مقدار\f[R] می‌تواند هر یک از موارد زیر باشد: .RS .IP \[bu] 2 \f[V]public\f[R] --- فقط نوع‌های عمومی را نمایش می‌دهد .IP \[bu] 2 \f[V]protected\f[R] --- نوع‌های عمومی و محافظت‌شده را نمایش می‌دهد؛ این حالت پیش‌فرض است .IP \[bu] 2 \f[V]package\f[R] --- نوع‌های عمومی، محافظت‌شده و بسته را نمایش می‌دهد .IP \[bu] 2 \f[V]private\f[R] --- تمام نوع‌ها را نمایش می‌دهد .RE .TP \f[V]-subpackages\f[R] \f[I]فهرست_زیربسته‌ها\f[R] مستندات را از فایل‌های منبع در بسته‌های مشخص‌شده و به‌طور بازگشتی در زیربسته‌های آن‌ها تولید می‌کند. این گزینه هنگام افزودن زیربسته‌های جدید به کد منبع مفید است زیرا آن‌ها به‌طور خودکار گنجانده می‌شوند. هر آرگومان بسته هر زیربسته سطح بالا (مانند \f[V]java\f[R]) یا بسته کاملاً واجد شرایط (مانند \f[V]javax.swing\f[R]) است که نیازی به داشتن فایل‌های منبع ندارد. آرگومان‌ها در تمام سیستم‌های عامل با دونقطه از هم جدا می‌شوند. استفاده از نویسه‌های عام (wildcard) مجاز نیست. از \f[V]-sourcepath\f[R] برای مشخص کردن محل یافتن بسته‌ها استفاده کنید. این گزینه فایل‌های منبعی را که در درخت منبع هستند اما به بسته‌ها تعلق ندارند پردازش نمی‌کند. .RS .PP برای مثال، دستورات زیر مستندات را برای بسته‌هایی به نام \f[V]java\f[R] و \f[V]javax.swing\f[R] و تمام زیربسته‌های آن‌ها تولید می‌کنند. .IP \[bu] 2 \f[B]لینوکس و macOS:\f[R] .RS 2 .IP .nf \f[CB] javadoc -d docs -sourcepath /home/user/src -subpackages java:javax.swing \f[R] .fi .RE .IP \[bu] 2 \f[B]ویندوز:\f[R] .RS 2 .IP .nf \f[CB] javadoc -d docs -sourcepath \[rs]user\[rs]src -subpackages java:javax.swing \f[R] .fi .RE .RE .TP \f[V]-verbose\f[R] پیام‌های با جزئیات بیشتر را در حین اجرای ابزار \f[V]javadoc\f[R] ارائه می‌دهد. بدون گزینه \f[V]-verbose\f[R]، پیام‌ها برای بارگیری فایل‌های منبع، تولید مستندات (یک پیام به ازای هر فایل منبع) و مرتب‌سازی ظاهر می‌شوند. گزینه \f[V]-verbose\f[R] باعث چاپ پیام‌های اضافی می‌شود که تعداد میلی‌ثانیه‌ها را برای تجزیه هر فایل منبع جاوا مشخص می‌کند. .TP \f[V]--version\f[R] اطلاعات نسخه را چاپ می‌کند. .TP \f[V]-Werror\f[R] در صورت بروز هرگونه هشدار، یک خطا گزارش می‌دهد. .SS "گزینه‌های اضافی \f[V]javadoc\f[R]" .PP \f[I]توجه:\f[R] گزینه‌های اضافی برای \f[V]javadoc\f[R] بدون اطلاع قبلی ممکن است تغییر کنند. .PP گزینه‌های اضافی \f[V]javadoc\f[R] زیر معادل گزینه‌های متناظر در \f[V]javac\f[R] هستند. برای توضیحات دقیق استفاده از این گزینه‌ها، بخش \f[I]گزینه‌های اضافی\f[R] در \f[B]javac\f[R] را ببینید: .IP \[bu] 2 \f[V]--add-exports\f[R] .IP \[bu] 2 \f[V]--add-reads\f[R] .IP \[bu] 2 \f[V]--patch-module\f[R] .IP \[bu] 2 \f[V]-Xmaxerrs\f[R] .IP \[bu] 2 \f[V]-Xmaxwarns\f[R] .SS "گزینه‌های استاندارد برای داکلت استاندارد (Standard Doclet)" .PP گزینه‌های زیر توسط داکلت استاندارد ارائه می‌شوند. .TP \f[V]--add-script\f[R] \f[I]فایل\f[R] \f[I]فایل\f[R] را به عنوان یک فایل جاوااسکریپت اضافی به مستندات تولیدشده اضافه می‌کند. این گزینه می‌تواند یک یا چند بار برای مشخص کردن فایل‌های اسکریپت اضافی استفاده شود. .RS .PP مثال خط فرمان: .RS .PP \f[V]javadoc --add-script first_script.js --add-script second_script.js pkg_foo\f[R] .RE .RE .TP \f[V]--add-stylesheet\f[R] \f[I]فایل\f[R] \f[I]فایل\f[R] را به عنوان یک فایل شیوه‌نامه (stylesheet) اضافی به مستندات تولیدشده اضافه می‌کند. این گزینه می‌تواند یک یا چند بار برای مشخص کردن شیوه‌نامه‌های اضافی گنجانده‌شده در مستندات استفاده شود. .RS .PP مثال خط فرمان: .IP .nf \f[CB] javadoc --add-stylesheet new_stylesheet_1.css --add-stylesheet new_stylesheet_2.css pkg_foo \f[R] .fi .RE .TP \f[V]--allow-script-in-comments\f[R] به جاوااسکریپت در گزینه‌ها و کامنت‌ها اجازه می‌دهد. .TP \f[V]-author\f[R] متن \f[V]\[at]author\f[R] را در اسناد تولیدشده شامل می‌شود. .TP \f[V]-bottom\f[R] \f[I]کد-html\f[R] متنی را که باید در پایین هر فایل خروجی قرار گیرد مشخص می‌کند. متن در پایین صفحه، زیر نوار ناوبری پایینی قرار می‌گیرد. متن می‌تواند حاوی تگ‌های HTML و فاصله باشد، اما در این صورت، متن باید در علامت نقل‌قول (گیومه) قرار گیرد. برای هرگونه علامت نقل‌قول داخلی در متن، از نویسه‌های گریز (escape) استفاده کنید. .TP \f[V]-charset\f[R] \f[I]نام\f[R] مجموعه نویسه (character set) HTML را برای این سند مشخص می‌کند. نام باید یک نام ترجیحی MIME باشد همان‌طور که در \f[B]ثبت IANA، مجموعه‌های نویسه\f[R] [http://www.iana.org/assignments/character-sets] مشخص شده است. .RS .PP برای مثال: .IP .nf \f[CB] javadoc -charset \[dq]iso-8859-1\[dq] mypackage \f[R] .fi .PP این دستور خط زیر را در سربرگ هر صفحه تولیدشده درج می‌کند: .IP .nf \f[CB] \f[R] .fi .PP تگ \f[V]meta\f[R] در \f[B]استاندارد HTML (4197265 و 4137321)، نمایش سند HTML\f[R] [http://www.w3.org/TR/REC-html40/charset.html#h-5.2.2] شرح داده شده است. .RE .TP \f[V]-d\f[R] \f[I]دایرکتوری\f[R] دایرکتوری مقصدی را مشخص می‌کند که ابزار \f[V]javadoc\f[R] فایل‌های HTML تولیدشده را در آن ذخیره می‌کند. اگر گزینه \f[V]-d\f[R] را حذف کنید، فایل‌ها در دایرکتوری جاری ذخیره می‌شوند. مقدار \f[V]دایرکتوری\f[R] می‌تواند مطلق یا نسبی نسبت به دایرکتوری کاری جاری باشد. دایرکتوری مقصد هنگام اجرای ابزار \f[V]javadoc\f[R] به‌طور خودکار ایجاد می‌شود. .RS .IP \[bu] 2 \f[B]لینوکس و macOS:\f[R] برای مثال، دستور زیر مستندات را برای بسته \f[V]com.mypackage\f[R] تولید کرده و نتایج را در دایرکتوری \f[V]/user/doc/\f[R] ذخیره می‌کند: .RS 2 .IP .nf \f[CB] javadoc -d /user/doc/ com.mypackage \f[R] .fi .RE .IP \[bu] 2 \f[B]ویندوز:\f[R] برای مثال، دستور زیر مستندات را برای بسته \f[V]com.mypackage\f[R] تولید کرده و نتایج را در دایرکتوری \f[V]\[rs]user\[rs]doc\[rs]\f[R] ذخیره می‌کند: .RS 2 .IP .nf \f[CB] javadoc -d \[rs]user\[rs]doc\[rs] com.mypackage \f[R] .fi .RE .RE .TP \f[V]-docencoding\f[R] \f[I]نام\f[R] کدگذاری فایل‌های HTML تولیدشده را مشخص می‌کند. نام باید یک نام ترجیحی MIME باشد همان‌طور که در \f[B]ثبت IANA، مجموعه‌های نویسه\f[R] [http://www.iana.org/assignments/character-sets] مشخص شده است. .RS .PP سه گزینه برای استفاده در دستور کدگذاری \f[V]javadoc\f[R] موجود است. گزینه \f[V]-encoding\f[R] برای کدگذاری فایل‌های خوانده‌شده توسط ابزار \f[V]javadoc\f[R] استفاده می‌شود، در حالی که گزینه‌های \f[V]-docencoding\f[R] و \f[V]-charset\f[R] برای کدگذاری فایل‌های نوشته‌شده توسط ابزار استفاده می‌شوند. از سه گزینه موجود، حداکثر یک گزینه کدگذاری ورودی و یک گزینه کدگذاری خروجی در یک دستور کدگذاری استفاده می‌شوند. اگر هر دو گزینه کدگذاری ورودی و خروجی را در یک دستور مشخص کنید، باید مقدار یکسانی داشته باشند. اگر هیچ گزینه خروجی را مشخص نکنید، به‌طور پیش‌فرض از کدگذاری ورودی استفاده می‌شود. .PP برای مثال: .IP .nf \f[CB] javadoc -docencoding \[dq]iso-8859-1\[dq] mypackage \f[R] .fi .RE .TP \f[V]-docfilessubdirs\f[R] زیردایرکتوری‌های doc-file را به‌طور بازگشتی کپی می‌کند. کپی عمیق دایرکتوری‌های doc-files را فعال می‌کند. زیردایرکتوری‌ها و تمام محتویات به‌طور بازگشتی در مقصد کپی می‌شوند. برای مثال، دایرکتوری \f[V]doc-files/example/images\f[R] و تمام محتویات آن کپی می‌شوند. گزینه \f[B]\f[VB]-excludedocfilessubdir\f[B]\f[R] می‌تواند برای مستثنی کردن زیردایرکتوری‌های خاص استفاده شود. .TP \f[V]-doctitle\f[R] \f[I]کد-html\f[R] عنوانی را برای قرار دادن نزدیک بالای فایل خلاصه نمای کلی (overview summary) مشخص می‌کند. متن مشخص‌شده در تگ \f[V]title\f[R] به عنوان یک سربرگ سطح اولِ وسط‌چین، مستقیماً زیر نوار ناوبری بالایی قرار می‌گیرد. تگ \f[V]title\f[R] می‌تواند حاوی تگ‌های HTML و فاصله باشد، اما در این صورت باید عنوان را در علامت نقل‌قول قرار دهید. علامت‌های نقل‌قول اضافی در تگ \f[V]title\f[R] باید گریز داده شوند (escaped). برای مثال، \f[V]javadoc -doctitle \[dq]My Library
v1.0\[dq] com.mypackage\f[R]. .TP \f[V]-excludedocfilessubdir\f[R] \f[I]نام۱\f[R]\f[V],\f[R]\f[I]نام۲...\f[R] هنگام کپی بازگشتی زیردایرکتوری‌های doc-file، هر زیردایرکتوری با نام‌های داده‌شده را مستثنی می‌کند. بخش \f[B]\f[VB]-docfilessubdirs\f[B]\f[R] را ببینید. به دلایل تاریخی، \f[V]:\f[R] می‌تواند در هر کجای آرگومان به عنوان جداکننده به جای \f[V],\f[R] استفاده شود. .TP \f[V]-footer\f[R] \f[I]کد-html\f[R] متن پاورقی را برای قرار دادن در پایین هر فایل خروجی مشخص می‌کند. مقدار \f[V]کد-html\f[R] در سمت راست نوار ناوبری پایینی قرار می‌گیرد. مقدار \f[V]کد-html\f[R] می‌تواند حاوی تگ‌های HTML و فاصله باشد، اما در این صورت، مقدار \f[V]کد-html\f[R] باید در علامت نقل‌قول قرار گیرد. از نویسه‌های گریز برای هرگونه علامت نقل‌قول داخلی در پاورقی استفاده کنید. .TP \f[V]-group\f[R] \f[I]نام\f[R] \f[I]بسته۱\f[R]\f[V],\f[R]\f[I]بسته۲...\f[R] بسته‌های مشخص‌شده را در صفحه نمای کلی (Overview) با هم گروه‌بندی می‌کند. به دلایل تاریخی، \f[V]:\f[R] می‌تواند به عنوان جداکننده در هر کجای آرگومان به جای \f[V],\f[R] استفاده شود. .TP \f[V]-header\f[R] \f[I]کد-html\f[R] متن سربرگ را برای قرار دادن در بالای هر فایل خروجی مشخص می‌کند. سربرگ در سمت راست نوار ناوبری بالایی قرار می‌گیرد. مقدار \f[V]header\f[R] می‌تواند حاوی تگ‌های HTML و فاصله باشد، اما در این صورت، \f[V]header\f[R] باید در علامت نقل‌قول قرار گیرد. از نویسه‌های گریز برای علامت‌های نقل‌قول داخلی در سربرگ استفاده کنید. برای مثال، \f[V]javadoc -header \[dq]My Library
v1.0\[dq] com.mypackage\f[R]. .TP \f[V]-helpfile\f[R] \f[I]نام_فایل\f[R] فایلی را که به پیوند \f[B]HELP\f[R] در نوارهای ناوبری بالا و پایین متصل می‌شود، شامل می‌سازد. بدون این گزینه، ابزار \f[V]javadoc\f[R] یک فایل راهنما به نام \f[V]help-doc.html\f[R] ایجاد می‌کند که در ابزار \f[V]javadoc\f[R] به صورت کد سخت قرار دارد. این گزینه به شما امکان می‌دهد مقدار پیش‌فرض را لغو کنید. \f[I]نام_فایل\f[R] می‌تواند هر نامی باشد و محدود به \f[V]help-doc.html\f[R] نیست. ابزار \f[V]javadoc\f[R] پیوندهای موجود در نوار ناوبری را بر این اساس تنظیم می‌کند. برای مثال: .RS .IP \[bu] 2 \f[B]لینوکس و macOS:\f[R] .RS 2 .IP .nf \f[CB] javadoc -helpfile /home/user/myhelp.html java.awt \f[R] .fi .RE .IP \[bu] 2 \f[B]ویندوز:\f[R] .RS 2 .IP .nf \f[CB] javadoc -helpfile C:\[rs]user\[rs]myhelp.html java.awt \f[R] .fi .RE .RE .TP \f[V]-html5\f[R] این گزینه بی‌اثر (no-op) است و صرفاً برای سازگاری با گذشته حفظ شده است. .TP \f[V]--javafx\f[R] یا \f[V]-javafx\f[R] قابلیت JavaFX را فعال می‌کند. اگر کلاس‌های کتابخانه JavaFX در مسیر ماژول شناسایی شوند، این گزینه به‌طور پیش‌فرض فعال است. .TP \f[V]-keywords\f[R] تگ‌های کلمه کلیدی \f[V]\f[R] در HTML را برای هر کلاس به فایل تولیدشده اضافه می‌کند. این تگ‌ها می‌توانند به موتورهای جستجویی که به دنبال تگ‌های \f[V]\f[R] می‌گردند در یافتن صفحات کمک کنند. اکثر موتورهای جستجو که کل اینترنت را جستجو می‌کنند به تگ‌های \f[V]\f[R] نگاه نمی‌کنند، زیرا صفحات ممکن است از آن‌ها سوءاستفاده کنند. موتورهای جستجوی ارائه‌شده توسط شرکت‌هایی که جستجوهای خود را به وب‌سایت خود محدود می‌کنند، می‌توانند از بررسی تگ‌های \f[V]\f[R] بهره‌مند شوند. تگ‌های \f[V]\f[R] شامل نام کاملاً واجد شرایط کلاس و نام‌های غیر واجد شرایط فیلدها و متدها هستند. سازنده‌ها گنجانده نمی‌شوند زیرا با نام کلاس یکسان هستند. برای مثال، کلاس \f[V]String\f[R] با این کلمات کلیدی شروع می‌شود: .RS .IP .nf \f[CB] \f[R] .fi .RE .TP \f[V]-link\f[R] \f[I]url\f[R] پیوندهایی به مستندات موجودِ تولیدشده توسط \f[V]javadoc\f[R] از کلاس‌های دارای ارجاع خارجی ایجاد می‌کند. آرگومان \f[I]url\f[R] نشانی وب مطلق یا نسبی دایرکتوری حاوی مستندات تولیدشده خارجی \f[V]javadoc\f[R] است. می‌توانید چندین گزینه \f[V]-link\f[R] را در یک اجرای ابزار \f[V]javadoc\f[R] مشخص کنید تا به چندین سند پیوند داده شود. .RS .PP باید یک فایل \f[V]package-list\f[R] یا \f[V]element-list\f[R] در این دایرکتوری \f[I]url\f[R] وجود داشته باشد (در غیر این صورت، از گزینه \f[V]-linkoffline\f[R] استفاده کنید). .PP \f[I]توجه:\f[R] فایل‌های \f[V]package-list\f[R] و \f[V]element-list\f[R] توسط ابزار \f[V]javadoc\f[R] هنگام تولید مستندات API ایجاد می‌شوند و نباید توسط کاربر تغییر داده شوند. .PP هنگامی که از ابزار \f[V]javadoc\f[R] برای مستندسازی بسته‌ها استفاده می‌کنید، از فایل \f[V]package-list\f[R] برای تعیین بسته‌های اعلان‌شده در یک API استفاده می‌کند. هنگامی که اسناد API را برای ماژول‌ها تولید می‌کنید، ابزار \f[V]javadoc\f[R] از فایل \f[V]element-list\f[R] برای تعیین ماژول‌ها و بسته‌های اعلان‌شده در یک API استفاده می‌کند. .PP ابزار \f[V]javadoc\f[R] نام‌ها را از فایل فهرست مناسب می‌خواند و سپس به بسته‌ها یا ماژول‌ها در آن نشانی وب پیوند می‌دهد. .PP هنگامی که ابزار \f[V]javadoc\f[R] اجرا می‌شود، مقدار \f[I]url\f[R] در پیوندهای \f[V]\f[R] ایجادشده کپی می‌شود. بنابراین، \f[I]url\f[R] باید نشانی وب دایرکتوری باشد و نه یک فایل. .PP می‌توانید از پیوند مطلق برای \f[I]url\f[R] استفاده کنید تا اسناد شما بتوانند به سندی در هر وب‌سایتی پیوند داده شوند، یا می‌توانید از پیوند نسبی برای پیوند دادن صرفاً به یک مکان نسبی استفاده کنید. اگر از پیوند نسبی استفاده می‌کنید، مقداری که ارسال می‌کنید باید مسیر نسبی از دایرکتوری مقصد (مشخص‌شده با گزینه \f[V]-d\f[R]) به دایرکتوری حاوی بسته‌های پیوندشده باشد. هنگامی که یک پیوند مطلق را مشخص می‌کنید، معمولاً از پیوند HTTP استفاده می‌کنید. با این حال، اگر می‌خواهید به یک فایل‌سیستم که فاقد وب‌سرور است پیوند دهید، می‌توانید از پیوند فایل استفاده کنید. تنها زمانی از پیوند فایل استفاده کنید که هر کسی که می‌خواهد به مستندات تولیدشده دسترسی داشته باشد، همان سیستم فایل را به اشتراک بگذارد. در همه موارد و در تمام سیستم‌های عامل، از اسلش به عنوان جداکننده استفاده کنید، چه URL مطلق باشد یا نسبی، و \f[V]https:\f[R]، \f[V]http:\f[R]، یا \f[V]file:\f[R] همان‌طور که در \f[B]یادداشت URL: مکان‌یاب‌های یکنواخت منبع\f[R] [http://www.ietf.org/rfc/rfc1738.txt] مشخص شده است. .IP .nf \f[CB] -link https://///.../ -link http://///.../ -link file://///.../ -link //.../ \f[R] .fi .RE .TP \f[V]--link-modularity-mismatch\f[R] (\f[V]warn\f[R]|\f[V]info\f[R]) مشخص می‌کند که آیا مستندات خارجی با ماژولار بودن نادرست (مانند مستندات غیر ماژولار برای یک کتابخانه ماژولار، یا حالت معکوس) باید به عنوان هشدار (\f[V]warn\f[R]) یا صرفاً یک پیام (\f[V]info\f[R]) گزارش شوند. رفتار پیش‌فرض گزارش یک هشدار است. .TP \f[V]-linkoffline\f[R] \f[I]url1\f[R] \f[I]url2\f[R] این گزینه گونه‌ای از گزینه \f[V]-link\f[R] است. هر دوی آن‌ها پیوندهایی به مستندات تولیدشده \f[V]javadoc\f[R] برای کلاس‌های دارای ارجاع خارجی ایجاد می‌کنند. می‌توانید چندین گزینه \f[V]-linkoffline\f[R] را در یک اجرای ابزار \f[V]javadoc\f[R] مشخص کنید. .RS .PP از گزینه \f[V]-linkoffline\f[R] در موارد زیر استفاده کنید: .IP \[bu] 2 پیوند دادن به سندی در وب که ابزار \f[V]javadoc\f[R] نمی‌تواند از طریق اتصال وب به آن دسترسی داشته باشد .IP \[bu] 2 فایل \f[V]package-list\f[R] یا \f[V]element-list\f[R] سند خارجی یا قابل دسترسی نیست یا در مکان URL وجود ندارد، اما در مکان دیگری وجود دارد و می‌تواند توسط فایل \f[V]package-list\f[R] یا \f[V]element-list\f[R] (معمولاً محلی) مشخص شود. .PP \f[I]توجه:\f[R] فایل‌های \f[V]package-list\f[R] و \f[V]element-list\f[R] توسط ابزار \f[V]javadoc\f[R] هنگام تولید مستندات API ایجاد می‌شوند و نباید توسط کاربر تغییر داده شوند. .PP اگر \f[I]url1\f[R] فقط در شبکه جهانی وب قابل دسترسی باشد، گزینه \f[V]-linkoffline\f[R] این محدودیت را که ابزار \f[V]javadoc\f[R] برای تولید مستندات باید اتصال وب داشته باشد برطرف می‌کند. .PP کاربرد دیگر گزینه \f[V]-linkoffline\f[R] به عنوان یک راه حل موقت برای به‌روزرسانی اسناد است. پس از اجرای ابزار \f[V]javadoc\f[R] روی مجموعه کاملی از بسته‌ها یا ماژول‌ها، می‌توانید ابزار \f[V]javadoc\f[R] را مجدداً روی مجموعه کوچک‌تری از بسته‌ها یا ماژول‌های تغییریافته اجرا کنید، تا فایل‌های به‌روزرسانی‌شده بتوانند دوباره در مجموعه اصلی درج شوند. .PP برای مثال، گزینه \f[V]-linkoffline\f[R] دو آرگومان می‌گیرد. اولی برای رشته‌ای است که باید در پیوندهای \f[V]\f[R] تعبیه شود، و دومی به ابزار \f[V]javadoc\f[R] می‌گوید فایل \f[V]package-list\f[R] یا \f[V]element-list\f[R] را کجا پیدا کند. .PP مقدار \f[I]url1\f[R] یا \f[I]url2\f[R] نشانی وب مطلق یا نسبی دایرکتوری حاوی مستندات تولیدشده خارجی \f[V]javadoc\f[R] است که می‌خواهید به آن پیوند دهید. در صورت نسبی بودن، مقدار باید مسیر نسبی از دایرکتوری مقصد (مشخص‌شده با گزینه \f[V]-d\f[R]) به ریشه بسته‌های پیوندشده باشد. بخش \f[I]url\f[R] در گزینه \f[V]-link\f[R] را ببینید. .RE .TP \f[V]--link-platform-properties\f[R] \f[I]url\f[R] یک فایل ویژگی‌ها (properties file) را مشخص می‌کند که برای پیکربندی پیوندها به مستندات پلتفرم استفاده می‌شود. .RS .PP انتظار می‌رود آرگومان \f[I]url\f[R] به یک فایل ویژگی‌ها شامل یک یا چند مدخل با قالب زیر اشاره کند، که در آن \f[V]\f[R] نسخه پلتفرم است همان‌طور که به گزینه \f[V]--release\f[R] یا \f[V]--source\f[R] ارسال شده و \f[V]\f[R] نشانی وب پایه مستندات API پلتفرم متناظر است: .IP .nf \f[CB] doclet.platform.docs.= \f[R] .fi .PP به عنوان مثال، یک فایل ویژگی‌ها حاوی نشانی‌های وب برای نسخه‌های ۱۵ تا ۱۷ ممکن است شامل خطوط زیر باشد: .IP .nf \f[CB] 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 \f[R] .fi .PP اگر فایل ویژگی‌ها حاوی مدخلی برای یک نسخه خاص نباشد، هیچ پیوند پلتفرمی ایجاد نمی‌شود. .RE .TP \f[V]-linksource\f[R] یک نسخه HTML از هر فایل منبع (همراه با شماره خطوط) ایجاد کرده و پیوندهایی به آن‌ها از مستندات استاندارد HTML اضافه می‌کند. پیوندها برای کلاس‌ها، رابط‌ها، سازنده‌ها، متدها و فیلدهایی که اعلان‌های آن‌ها در یک فایل منبع است ایجاد می‌شوند. در غیر این صورت، پیوندها ایجاد نمی‌شوند، مانند سازنده‌های پیش‌فرض و کلاس‌های تولیدشده. .RS .PP این گزینه تمام جزئیات پیاده‌سازی خصوصی را در فایل‌های منبع گنجانده‌شده، شامل کلاس‌های خصوصی، فیلدهای خصوصی و بدنه متدهای خصوصی، بدون در نظر گرفتن گزینه‌های \f[V]-public\f[R]، \f[V]-package\f[R]، \f[V]-protected\f[R] و \f[V]-private\f[R] نمایش می‌دهد. مگر اینکه از گزینه \f[V]-private\f[R] نیز استفاده کنید، تمام کلاس‌ها یا رابط‌های خصوصی از طریق پیوندها قابل دسترسی نیستند. .PP هر پیوند روی نام شناسه در اعلان آن ظاهر می‌شود. برای مثال، پیوند به کد منبع کلاس \f[V]Button\f[R] روی کلمه \f[V]Button\f[R] خواهد بود: .IP .nf \f[CB] public class Button extends Component implements Accessible \f[R] .fi .PP پیوند به کد منبع متد \f[V]getLabel\f[R] در کلاس \f[V]Button\f[R] روی کلمه \f[V]getLabel\f[R] قرار دارد: .IP .nf \f[CB] public String getLabel() \f[R] .fi .RE .TP \f[V]--main-stylesheet\f[R] \f[I]فایل\f[R] یا \f[V]-stylesheetfile\f[R] \f[I]فایل\f[R] مسیر یک فایل شیوه‌نامه جایگزین را مشخص می‌کند که شامل تعاریف سبک‌های CSS مورد استفاده در مستندات تولیدشده است. این گزینه به شما امکان می‌دهد مقدار پیش‌فرض را لغو کنید. اگر این گزینه را مشخص نکنید، ابزار \f[V]javadoc\f[R] یک شیوه‌نامه پیش‌فرض ایجاد کرده و از آن استفاده می‌کند. نام فایل می‌تواند هر نامی باشد و به \f[V]stylesheet.css\f[R] محدود نمی‌شود. گزینه \f[V]--main-stylesheet\f[R] فرم ترجیحی است. .RS .PP مثال خط فرمان: .IP .nf \f[CB] javadoc --main-stylesheet main_stylesheet.css pkg_foo \f[R] .fi .RE .TP \f[V]-nocomment\f[R] کل بدنه کامنت، از جمله توضیحات اصلی و همه تگ‌ها را سرکوب کرده و فقط اعلان‌ها را تولید می‌کند. این گزینه به شما امکان می‌دهد از فایل‌های منبعی که در ابتدا برای هدف دیگری در نظر گرفته شده بودند مجدداً استفاده کنید تا بتوانید در مراحل اولیه یک پروژه جدید، اسکلت مستندات HTML را تولید نمایید. .TP \f[V]-nodeprecated\f[R] از تولید هرگونه API منسوخ‌شده (deprecated) در مستندات جلوگیری می‌کند. این کار همان کاری را انجام می‌دهد که گزینه \f[V]-nodeprecatedlist\f[R] انجام می‌دهد، به علاوه در بقیه بخش‌های مستندات نیز هیچ API منسوخ‌شده‌ای تولید نمی‌کند. این گزینه هنگام نوشتن کد زمانی که نمی‌خواهید حواستان با کدهای منسوخ‌شده پرت شود مفید است. .TP \f[V]-nodeprecatedlist\f[R] از تولید فایلی که حاوی فهرست APIهای منسوخ‌شده است (\f[V]deprecated-list.html\f[R]) و پیوند موجود در نوار ناوبری به آن صفحه جلوگیری می‌کند. ابزار \f[V]javadoc\f[R] به تولید API منسوخ‌شده در سرتاسر بقیه سند ادامه می‌دهد. این گزینه زمانی مفید است که کد منبع شما حاوی هیچ API منسوخ‌شده‌ای نباشد و بخواهید نوار ناوبری تمیزتری داشته باشید. .TP \f[V]-nohelp\f[R] پیوند HELP را در نوار ناوبری بالای هر صفحه خروجی حذف می‌کند. .TP \f[V]-noindex\f[R] نمایه (index) را از اسناد تولیدشده حذف می‌کند. نمایه به‌طور پیش‌فرض تولید می‌شود. .TP \f[V]-nonavbar\f[R] از تولید نوار ناوبری، سربرگ و پاورقی که معمولاً در بالا و پایین صفحات تولیدشده یافت می‌شوند، جلوگیری می‌کند. گزینه \f[V]-nonavbar\f[R] هیچ تأثیری بر گزینه \f[V]-bottom\f[R] ندارد. گزینه \f[V]-nonavbar\f[R] زمانی مفید است که فقط به محتوا علاقه‌مند هستید و نیازی به ناوبری ندارید، مانند زمانی که فایل‌ها را صرفاً برای چاپ به PostScript یا PDF تبدیل می‌کنید. .TP \f[V]--no-platform-links\f[R] از ایجاد پیوند به مستندات پلتفرم جلوگیری می‌کند. این پیوندها به‌طور پیش‌فرض تولید می‌شوند. .TP \f[V]-noqualifier\f[R] \f[I]نام۱\f[R]\f[V],\f[R]\f[I]نام۲...\f[R] فهرست واجد شرایط‌کننده‌ها (qualifiers) را از خروجی حذف می‌کند. نام بسته از جاهایی که نام کلاس یا رابط ظاهر می‌شود حذف می‌شود. به دلایل تاریخی، \f[V]:\f[R] می‌تواند در هر کجای آرگومان به عنوان جداکننده به جای \f[V],\f[R] استفاده شود. .RS .PP مثال زیر تمام واجد شرایط‌کننده‌های بسته را حذف می‌کند: \f[V]-noqualifier all\f[R]. .PP مثال زیر واجد شرایط‌کننده‌های بسته‌های \f[V]java.lang\f[R] و \f[V]java.io\f[R] را حذف می‌کند: \f[V]-noqualifier java.lang:java.io\f[R]. .PP مثال زیر واجد شرایط‌کننده‌های بسته‌هایی را که با زیربسته‌های \f[V]java\f[R] و \f[V]com.sun\f[R] شروع می‌شوند، حذف می‌کند، اما \f[V]javax\f[R] را حذف نمی‌کند: \f[V]-noqualifier java.*:com.sun.*\f[R]. .PP در جایی که یک واجد شرایط‌کننده بسته به دلیل رفتار قبلی ظاهر می‌شود، نام می‌تواند به شکل مناسب کوتاه شود. این قاعده بدون در نظر گرفتن اینکه آیا از گزینه \f[V]-noqualifier\f[R] استفاده شده است یا خیر، اعمال می‌شود. .RE .TP \f[V]-nosince\f[R] بخش‌های \f[V]Since\f[R] مرتبط با تگ‌های \f[V]\[at]since\f[R] را از اسناد تولیدشده حذف می‌کند. .TP \f[V]-notimestamp\f[R] برچسب زمانی را که در یک کامنت HTML در بالای هر صفحه مخفی شده است، سرکوب می‌کند. گزینه \f[V]-notimestamp\f[R] زمانی مفید است که می‌خواهید ابزار \f[V]javadoc\f[R] را روی دو پایگاه منبع اجرا کنید و تفاوت‌های بین آن‌ها را با \f[V]diff\f[R] بگیرید، زیرا از ایجاد تفاوت توسط برچسب‌های زمانی جلوگیری می‌کند (که در غیر این صورت در هر صفحه یک \f[V]diff\f[R] ایجاد می‌شد). برچسب زمانی شامل شماره انتشار ابزار \f[V]javadoc\f[R] است. .TP \f[V]-notree\f[R] صفحات سلسله‌مراتب کلاس و رابط را از اسناد تولیدشده حذف می‌کند. این‌ها صفحاتی هستند که با استفاده از دکمه Tree در نوار ناوبری به آن‌ها می‌رسید. سلسله‌مراتب به‌طور پیش‌فرض تولید می‌شود. .TP \f[V]--override-methods\f[R] (\f[V]detail\f[R]|\f[V]summary\f[R]) متدهای بازنویسی‌شده (overridden) را در بخش‌های جزئیات یا خلاصه مستندسازی می‌کند. مقدار پیش‌فرض \f[V]detail\f[R] است. .TP \f[V]-overview\f[R] \f[I]نام_فایل\f[R] مشخص می‌کند که ابزار \f[V]javadoc\f[R] باید متن مستندات نمای کلی را از فایل منبع مشخص‌شده توسط \f[V]نام_فایل\f[R] بازیابی کند و آن را در صفحه نمای کلی (\f[V]overview-summary.html\f[R]) قرار دهد. یک مسیر نسبی مشخص‌شده با نام فایل، نسبت به دایرکتوری کاری جاری است. .RS .PP در حالی که می‌توانید از هر نامی که می‌خواهید برای مقدار \f[V]نام_فایل\f[R] استفاده کنید و آن را در هر کجای مسیر قرار دهید، معمول است که نام آن را \f[V]overview.html\f[R] بگذارید و آن را در درخت منبع در دایرکتوری حاوی بالاترین دایرکتوری‌های بسته قرار دهید. در این مکان، هنگام مستندسازی بسته‌ها به هیچ مسیری نیاز نیست، زیرا گزینه \f[V]-sourcepath\f[R] به این فایل اشاره می‌کند. .IP \[bu] 2 \f[B]لینوکس و macOS:\f[R] برای مثال، اگر درخت منبع برای بسته \f[V]java.lang\f[R] به صورت \f[V]src/classes/java/lang/\f[R] باشد، می‌توانید فایل نمای کلی را در src/classes/overview.html قرار دهید. .IP \[bu] 2 \f[B]ویندوز:\f[R] برای مثال، اگر درخت منبع برای بسته \f[V]java.lang\f[R] به صورت \f[V]src\[rs]classes\[rs]java\[rs]lang\[rs]\f[R] باشد، می‌توانید فایل نمای کلی را در \f[V]src\[rs]classes\[rs]overview.html\f[R] قرار دهید. .PP صفحه نمای کلی تنها زمانی ایجاد می‌شود که دو یا چند نام بسته را به ابزار \f[V]javadoc\f[R] ارسال کنید. عنوان صفحه نمای کلی توسط \f[V]-doctitle\f[R] تنظیم می‌شود. .RE .TP \f[V]-serialwarn\f[R] هشدارهای زمان کامپایل را برای تگ‌های گم‌شده \f[V]\[at]serial\f[R] تولید می‌کند. به‌طور پیش‌فرض، Javadoc هیچ هشدار سریالی تولید نمی‌کند. از این گزینه برای نمایش هشدارهای سریال استفاده کنید، که به مستندسازی صحیح فیلدهای سریالی‌شدنی پیش‌فرض و متدهای \f[V]writeExternal\f[R] کمک می‌کند. .TP \f[V]--since\f[R] \f[I]نسخه_انتشار\f[R](\f[V],\f[R]\f[I]نسخه_انتشار\f[R])* مستندات را برای APIهایی که در \f[I]نسخه‌های انتشار\f[R] مشخص‌شده اضافه یا تازه منسوخ شده‌اند تولید می‌کند. .RS .PP اگر تگ \f[V]\[at]since\f[R] در کامنت \f[V]javadoc\f[R] یک عنصر در کد منبع مستندشده با یک \f[I]نسخه_انتشار\f[R] ارسال‌شده به عنوان آرگومان گزینه مطابقت داشته باشد، اطلاعات مربوط به عنصر و نسخه‌ای که در آن اضافه شده است در صفحه \[dq]New API\[dq] گنجانده می‌شود. .PP اگر صفحه \[dq]Deprecated API\[dq] تولید شود و عنصر \f[V]since\f[R] از حاشیه‌نویسی \f[V]java.lang.Deprecated\f[R] یک عنصر مستندشده با یک \f[I]نسخه_انتشار\f[R] در آرگومان‌های گزینه مطابقت داشته باشد، اطلاعات مربوط به نسخه‌ای که عنصر در آن منسوخ شده است به صفحه \[dq]Deprecated API\[dq] اضافه می‌شود. .PP نسخه‌های انتشار با استفاده از مقایسه رشته‌ای حساس به حروف بزرگ و کوچک مقایسه می‌شوند. .RE .TP \f[V]--since-label\f[R] \f[I]متن\f[R] \f[I]متن\f[R] مورد استفاده در سربرگ صفحه \[dq]New API\[dq] را مشخص می‌کند. این ممکن است شامل اطلاعاتی درباره نسخه‌های پوشش داده شده در صفحه باشد، برای مثال \[dq]New API in release 2.0\[dq] یا \[dq]New API since release 1\[dq]. .TP \f[V]--snippet-path\f[R] \f[I]فهرست_مسیر_قطعه\f[R] مسیرهای جستجو را برای یافتن فایل‌های قطعات کد (snippets) خارجی مشخص می‌کند. \f[I]فهرست_مسیر_قطعه\f[R] می‌تواند شامل چندین مسیر باشد که با جداکننده مسیر پلتفرم (\f[V];\f[R] در ویندوز؛ \f[V]:\f[R] در سایر پلتفرم‌ها) از هم جدا شده‌اند. داکلت استاندارد ابتدا زیردایرکتوری \f[V]snippet-files\f[R] را در بسته حاوی قطعه کد جستجو می‌کند و سپس تمام دایرکتوری‌های موجود در فهرست داده‌شده را جستجو می‌نماید. .TP \f[V]-sourcetab\f[R] \f[I]طول_تب\f[R] تعداد فاصله‌هایی را که هر تب در منبع استفاده می‌کند مشخص می‌سازد. .TP \f[V]--spec-base-url\f[R] \f[I]url\f[R] نشانی وب پایه را برای نشانی‌های وب نسبی در تگ‌های \f[V]\[at]spec\f[R] مشخص می‌کند، تا هنگام تولید پیوندها به هرگونه مشخصات خارجی استفاده شود. این مقدار می‌تواند یک URL مطلق یا یک URL نسبی باشد، که در این حالت نسبت به دایرکتوری پایه فایل‌های خروجی تولیدشده ارزیابی می‌شود. مقدار پیش‌فرض معادل \f[V]{\[at]docRoot}/../specs\f[R] است. .TP \f[V]-splitindex\f[R] فایل نمایه را به چندین فایل به صورت الفبایی تقسیم می‌کند، یک فایل برای هر حرف، به علاوه یک فایل برای مدخل‌های نمایه‌ای که با نمادهای غیر الفبایی شروع می‌شوند. .TP \f[V]-tag\f[R] \f[I]نام\f[R]:\f[I]مکان‌ها\f[R]:\f[I]سربرگ\f[R] تگ‌های سفارشی تک‌آرگومانی را مشخص می‌کند. برای اینکه ابزار \f[V]javadoc\f[R] املای نام تگ‌ها را بررسی کند، مهم است که برای هر تگ سفارشی موجود در کد منبع یک گزینه \f[V]-tag\f[R] قرار دهید و تگ‌هایی را که در اجرای فعلی خروجی داده نمی‌شوند (با \f[V]X\f[R]) غیرفعال کنید. دونقطه (\f[V]:\f[R]) همیشه جداکننده است. برای گنجاندن دونقطه در نام تگ، آن را با یک بک‌اسلش (\f[V]\[rs]\f[R]) اسکیپ کنید. گزینه \f[V]-tag\f[R] عنوان تگ، یعنی \f[I]سربرگ\f[R] را به صورت پررنگ (bold) در خروجی نمایش می‌دهد و در خط بعدی متن ناشی از تک آرگومان آن قرار می‌گیرد. مشابه هر تگ بلوکی، متن آرگومان می‌تواند حاوی تگ‌های درون‌خطی (inline) باشد که آن‌ها نیز تفسیر می‌شوند. خروجی شبیه به تگ‌های تک‌آرگومانی استاندارد مانند تگ‌های \f[V]\[at]return\f[R] و \f[V]\[at]author\f[R] است. حذف مقدار \f[I]سربرگ\f[R] باعث می‌شود که \f[I]نام\f[R] به عنوان عنوان در نظر گرفته شود. \f[I]مکان‌ها\f[R] فهرستی از نویسه‌ها است که انواع اعلان‌هایی را که تگ می‌تواند در آن‌ها استفاده شود مشخص می‌کند. نویسه‌های زیر را می‌توان به صورت حروف بزرگ یا کوچک استفاده کرد: .RS .IP \[bu] 2 \f[V]A\f[R]: تمام اعلان‌ها .IP \[bu] 2 \f[V]C\f[R]: سازنده‌ها .IP \[bu] 2 \f[V]F\f[R]: فیلدها .IP \[bu] 2 \f[V]M\f[R]: متدها .IP \[bu] 2 \f[V]O\f[R]: صفحه نمای کلی و سایر فایل‌های مستندات در زیردایرکتوری‌های \f[V]doc-files\f[R] .IP \[bu] 2 \f[V]P\f[R]: بسته‌ها .IP \[bu] 2 \f[V]S\f[R]: ماژول‌ها .IP \[bu] 2 \f[V]T\f[R]: نوع‌ها (کلاس‌ها و رابط‌ها) .IP \[bu] 2 \f[V]X\f[R]: هیچ‌کجا: تگ غیرفعال است و نادیده گرفته می‌شود .PP ترتیبی که تگ‌ها در خط فرمان داده می‌شوند به عنوان ترتیبی که تگ‌ها در خروجی تولیدشده ظاهر می‌شوند استفاده خواهد شد. می‌توانید تگ‌های استاندارد را به ترتیبی که در خط فرمان داده شده است با استفاده از گزینه \f[V]-tag\f[R] بدون \f[I]مکان‌ها\f[R] یا \f[I]سربرگ\f[R] شامل کنید. .RE .TP \f[V]-taglet\f[R] \f[I]کلاس\f[R] نام کاملاً واجد شرایط تگ‌لتی را که در تولید مستندات برای آن تگ استفاده می‌شود مشخص می‌کند. از نام کاملاً واجد شرایط برای مقدار \f[I]کلاس\f[R] استفاده کنید. این تگ‌لت همچنین تعداد آرگومان‌های متنی را که تگ سفارشی دارد تعریف می‌کند. تگ‌لت آن آرگومان‌ها را می‌پذیرد، آن‌ها را پردازش می‌کند و خروجی را تولید می‌نماید. .RS .PP تگ‌لت‌ها برای تگ‌های بلوکی یا درون‌خطی مفید هستند. آن‌ها می‌توانند هر تعداد آرگومان داشته باشند و رفتارهای سفارشی را پیاده‌سازی کنند، مانند پررنگ کردن متن، قالب‌بندی نقطه‌ها، نوشتن متن در یک فایل، یا راه‌اندازی فرآیندهای دیگر. تگ‌لت‌ها فقط می‌توانند تعیین کنند که یک تگ در کجا و به چه شکلی ظاهر شود. تمام تصمیمات دیگر توسط داکلت گرفته می‌شود. یک تگ‌لت نمی‌تواند کارهایی مانند حذف نام کلاس از فهرست کلاس‌های گنجانده‌شده را انجام دهد. با این حال، می‌تواند اثرات جانبی مانند چاپ متن تگ در یک فایل یا راه‌اندازی فرآیند دیگری را اجرا کند. از گزینه \f[V]-tagletpath\f[R] برای مشخص کردن مسیر تگ‌لت استفاده کنید. مثال زیر تگ‌لت To Do را بعد از Parameters و جلوتر از Throws در صفحات تولیدشده درج می‌کند. .IP .nf \f[CB] -taglet com.sun.tools.doclets.ToDoTaglet -tagletpath /home/taglets -tag return -tag param -tag todo -tag throws -tag see \f[R] .fi .PP به صورت متناوب، می‌توانید از گزینه \f[V]-taglet\f[R] به جای گزینه \f[V]-tag\f[R] آن استفاده کنید، اما خواندن آن ممکن است دشوار باشد. .RE .TP \f[V]-tagletpath\f[R] \f[I]فهرست_مسیر_تگ‌لت\f[R] مسیرهای جستجو را برای یافتن فایل‌های کلاس تگ‌لت مشخص می‌کند. \f[I]فهرست_مسیر_تگ‌لت\f[R] می‌تواند شامل چندین مسیر با جدا کردن آن‌ها با جداکننده مسیر پلتفرم باشد (\f[V];\f[R] در ویندوز؛ \f[V]:\f[R] در سایر پلتفرم‌ها). ابزار \f[V]javadoc\f[R] تمام زیردایرکتوری‌های مسیرهای مشخص‌شده را جستجو می‌کند. .TP \f[V]-top\f[R] \f[I]کد-html\f[R] متنی را برای قرار دادن در بالای هر فایل خروجی مشخص می‌کند. .TP \f[V]-use\f[R] صفحات استفاده (use) از کلاس و بسته را ایجاد می‌کند. شامل یک صفحه Use برای هر کلاس و بسته مستندشده است. این صفحه توصیف می‌کند چه بسته‌ها، کلاس‌ها، متدها، سازنده‌ها و فیلدهایی از هر API کلاس یا بسته مشخص‌شده استفاده می‌کنند. برای کلاس مفروض C، مواردی که از کلاس C استفاده می‌کنند شامل زیرکلاس‌های C، فیلدهای اعلان‌شده به عنوان C، متدهایی که C را برمی‌گردانند، و متدها و سازنده‌هایی با پارامترهایی از نوع C هستند. برای مثال، می‌توانید به صفحه Use برای نوع \f[V]String\f[R] نگاه کنید. از آنجا که متد \f[V]getName\f[R] در کلاس \f[V]java.awt.Font\f[R] نوع \f[V]String\f[R] را برمی‌گرداند، متد \f[V]getName\f[R] از \f[V]String\f[R] استفاده می‌کند و بنابراین متد \f[V]getName\f[R] در صفحه Use برای \f[V]String\f[R] ظاهر می‌شود. این گزینه فقط استفاده از API را مستند می‌کند، نه پیاده‌سازی را. هنگامی که یک متد از \f[V]String\f[R] در پیاده‌سازی خود استفاده می‌کند، اما یک رشته را به عنوان آرگومان نمی‌گیرد یا رشته‌ای را برنمی‌گرداند، این به عنوان استفاده از \f[V]String\f[R] در نظر گرفته نمی‌شود. برای دسترسی به صفحه تولیدشده Use، به کلاس یا بسته بروید و روی \f[B]پیوند Use\f[R] در نوار ناوبری کلیک کنید. .TP \f[V]-version\f[R] متن نسخه را در اسناد تولیدشده شامل می‌کند. این متن به‌طور پیش‌فرض حذف شده است. برای فهمیدن اینکه از چه نسخه‌ای از ابزار \f[V]javadoc\f[R] استفاده می‌کنید، از گزینه \f[V]-J-version\f[R] استفاده نمایید. .TP \f[V]-windowtitle\f[R] \f[I]عنوان\f[R] عنوانی را برای قرار دادن در تگ HTML \f[V]\f[R] مشخص می‌کند. متن مشخص‌شده در تگ \f[V]title\f[R] در عنوان پنجره و در هر بوک‌مارک مرورگری (مکان‌های مورد علاقه) که شخصی برای این صفحه ایجاد می‌کند ظاهر می‌شود. این عنوان نباید حاوی هیچ تگ HTML باشد زیرا مرورگر آن‌ها را به درستی تفسیر نمی‌کند. برای هر علامت نقل‌قول داخلی در تگ \f[V]title\f[R] از نویسه‌های گریز استفاده کنید. اگر گزینه \f[V]-windowtitle\f[R] حذف شود، ابزار \f[V]javadoc\f[R] از مقدار گزینه \f[V]-doctitle\f[R] برای گزینه \f[V]-windowtitle\f[R] استفاده می‌کند. برای مثال، \f[V]javadoc -windowtitle \[dq]My Library\[dq] com.mypackage\f[R]. .SS "گزینه‌های اضافی برای داکلت استاندارد (Standard Doclet)" .PP موارد زیر گزینه‌های اضافی ارائه‌شده توسط داکلت استاندارد هستند و بدون اطلاع قبلی ممکن است تغییر کنند. گزینه‌های اضافی کمتر مورد استفاده قرار می‌گیرند یا پیشرفته تلقی می‌شوند. .TP \f[V]--date\f[R] \f[I]تاریخ-و-زمان\f[R] مقداری را برای برچسب زمانی صفحات تولیدشده، در قالب \f[B]ISO 8601\f[R] [https://www.iso.org/iso-8601-date-and-time-format.html] مشخص می‌کند. مقدار مشخص‌شده باید در بازه ۱۰ سال از تاریخ و زمان فعلی باشد. مشخص کردن هم‌زمان هر دو گزینه \f[V]-notimestamp\f[R] و \f[V]--date\f[R] یک خطا است. استفاده از یک مقدار خاص به این معنی است که مستندات تولیدشده می‌توانند بخشی از یک \f[B]ساخت تکرارپذیر (reproducible build)\f[R] [https://reproducible-builds.org] باشند. اگر این گزینه داده نشود، مقدار پیش‌فرض تاریخ و زمان فعلی است. برای مثال: .RS .IP .nf \f[CB] javadoc --date 2022-02-01T17:41:59-08:00 mypackage \f[R] .fi .RE .TP \f[V]--legal-notices\f[R] (\f[V]default\f[R]|\f[V]none\f[R]|\f[I]دایرکتوری\f[R]) مکانی را مشخص می‌کند که فایل‌های حقوقی و قانونی از آنجا به مستندات تولیدشده کپی شوند. اگر گزینه مشخص نشده باشد یا با مقدار \f[V]default\f[R] استفاده شود، فایل‌ها از مکان پیش‌فرض کپی می‌شوند. اگر آرگومان با مقدار \f[V]none\f[R] استفاده شود، هیچ فایلی کپی نمی‌شود. هر آرگومان دیگر به عنوان دایرکتوری در نظر گرفته می‌شود که فایل‌های حقوقی باید از آن کپی شوند. .TP \f[V]--no-frames\f[R] این گزینه بی‌اثر (no-op) است و صرفاً برای سازگاری با گذشته حفظ شده است. .TP \f[V]-Xdoclint\f[R] بررسی‌های توصیه‌شده را برای مشکلات موجود در کامنت‌های مستندسازی فعال می‌کند. .RS .PP به‌طور پیش‌فرض، گزینه \f[V]-Xdoclint\f[R] فعال است. آن را با گزینه \f[V]-Xdoclint:none\f[R] غیرفعال کنید. .PP برای جزئیات بیشتر، بخش \f[B]DocLint\f[R] را ببینید. .RE .TP \f[V]-Xdoclint:\f[R]\f[I]فلگ\f[R],\f[I]فلگ\f[R],... بررسی‌های خاص را برای انواع مختلف مشکلات در کامنت‌های مستندسازی فعال یا غیرفعال می‌کند. .RS .PP هر \f[I]فلگ\f[R] می‌تواند یکی از مقادیر \f[V]all\f[R]، \f[V]none\f[R]، یا \f[V][-]\f[R]\f[I]گروه\f[R] باشد که در آن \f[I]گروه\f[R] یکی از مقادیر زیر را دارد: \f[V]accessibility\f[R]، \f[V]html\f[R]، \f[V]missing\f[R]، \f[V]reference\f[R]، \f[V]syntax\f[R]. برای جزئیات بیشتر در مورد این مقادیر، بخش \f[B]گروه‌های DocLint\f[R] را ببینید. .PP هنگام مشخص کردن دو یا چند فلگ، می‌توانید از یک گزینه واحد \f[V]-Xdoclint:...\f[R] استفاده کنید و تمام فلگ‌های مورد نظر را فهرست نمایید، یا می‌توانید از چندین گزینه استفاده کنید که در هر گزینه یک یا چند فلگ قید شده باشد. برای مثال، از هر یک از دستورات زیر برای بررسی مشکلات HTML، نحو و دسترسی‌پذیری در فایل \f[V]MyFile.java\f[R] استفاده کنید. .IP .nf \f[CB] javadoc -Xdoclint:html -Xdoclint:syntax -Xdoclint:accessibility MyFile.java javadoc -Xdoclint:html,syntax,accessibility MyFile.java \f[R] .fi .PP مثال‌های زیر نحوه تغییر مواردی را که DocLint گزارش می‌دهد نشان می‌دهند: .IP \[bu] 2 \f[V]-Xdoclint:none\f[R] --- تمام بررسی‌ها را غیرفعال می‌کند .IP \[bu] 2 \f[V]-Xdoclint:\f[R]\f[I]گروه\f[R] --- بررسی‌های \f[I]گروه\f[R] را فعال می‌کند .IP \[bu] 2 \f[V]-Xdoclint:all\f[R] --- تمام گروه‌های بررسی را فعال می‌کند .IP \[bu] 2 \f[V]-Xdoclint:all,-\f[R]\f[I]گروه\f[R] --- تمام بررسی‌ها به جز بررسی‌های \f[I]گروه\f[R] را فعال می‌کند .PP برای جزئیات بیشتر، بخش \f[B]DocLint\f[R] را ببینید. .RE .TP \f[V]-Xdoclint/package:\f[R][\f[V]-\f[R]]\f[I]بسته‌ها\f[R] بررسی‌ها را در بسته‌های خاص فعال یا غیرفعال می‌کند. \f[I]بسته‌ها\f[R] فهرستی از مشخص‌کننده‌های بسته است که با کاما از هم جدا شده‌اند. یک مشخص‌کننده بسته یا یک نام واجد شرایط از یک بسته است یا یک پیشوند نام بسته که به دنبال آن \f[V]*\f[R] می‌آید، که به تمام زیربسته‌های بسته داده‌شده گسترش می‌یابد. پیشوند مشخص‌کننده بسته را با \f[V]-\f[R] قرار دهید تا بررسی‌ها برای بسته‌های مشخص‌شده غیرفعال شوند. .RS .PP برای جزئیات بیشتر، بخش \f[B]DocLint\f[R] را ببینید. .RE .TP \f[V]-Xdocrootparent\f[R] \f[I]url\f[R] تمام موارد \f[V]\[at]docRoot\f[R] را که با \f[V]/..\f[R] در کامنت‌های مستندسازی دنبال می‌شوند با \f[I]url\f[R] جایگزین می‌کند. .SH "داک‌لینت (DOCLINT)" .PP ابزار DocLint قابلیت بررسی مشکلات احتمالی در کامنت‌های مستندسازی را فراهم می‌کند. مشکلات ممکن است بسته به شدت آن‌ها به صورت هشدار یا خطا گزارش شوند. برای مثال، کامنت گم‌شده ممکن است سبک بدی باشد که مستحق هشدار است، اما پیوند به یک اعلان ناشناخته جاوا جدی‌تر است و سزاوار خطا است. مشکلات در \f[B]گروه‌ها\f[R] سازمان‌دهی شده‌اند، و گزینه‌ها می‌توانند برای فعال یا غیرفعال کردن پیام‌ها در یک یا چند گروه استفاده شوند. در کد منبع، پیام‌های یک یا چند گروه را می‌توان با استفاده از حاشیه‌نویسی‌های \f[V]\[at]SuppressWarnings\f[R] \f[B]بی‌صدا (suppress)\f[R] کرد. .PP هنگامی که از \f[V]javadoc\f[R] فراخوانی می‌شود، به‌طور پیش‌فرض DocLint تمام کامنت‌هایی را که در مستندات تولیدشده استفاده می‌شوند بررسی می‌کند. بنابراین برای تعیین اینکه کدام اعلان‌ها و کامنت‌های مستندسازی متناظر گنجانده خواهند شد، به سایر گزینه‌های خط فرمان متکی است. \f[I]توجه:\f[R] این ممکن است به این معنی باشد که حتی کامنت‌های مربوط به برخی از اعضای خصوصی کلاس‌های سریالی‌شدنی نیز در صورتی که اعضا نیاز به مستندسازی در صفحه \f[V]Serialized Forms\f[R] تولیدشده داشته باشند، بررسی خواهند شد. .PP در مقابل، هنگامی که DocLint از \f[V]javac\f[R] فراخوانی می‌شود، DocLint صرفاً به گزینه‌های مختلف \f[V]-Xdoclint...\f[R] متکی است تا تعیین کند کدام کامنت‌های مستندسازی را بررسی کند. .PP ابزار DocLint تلاشی برای اصلاح ورودی نامعتبر نمی‌کند، فقط آن را گزارش می‌دهد. .PP \f[I]توجه:\f[R] ابزار DocLint کامل بودن این بررسی‌ها را تضمین نمی‌کند. به‌ویژه، این یک بررسی‌کننده کامل انطباق HTML نیست. هدف صرفاً گزارش خطاهای رایج به روشی مناسب است. .SS "گروه‌ها (Groups)" .PP بررسی‌های انجام‌شده توسط DocLint در گروه‌هایی سازمان‌دهی شده‌اند. هشدارها و خطاهای هر گروه را می‌توان با گزینه‌های خط فرمان فعال یا غیرفعال کرد، یا با حاشیه‌نویسی‌های \f[V]\[at]SuppressWarnings\f[R] بی‌صدا نمود. .PP گروه‌ها به شرح زیر هستند: .IP \[bu] 2 \f[V]accessibility\f[R] --- مشکلات مربوط به دسترس‌پذیری را بررسی می‌کند. برای مثال، صفت \f[V]alt\f[R] در عنصر \f[V]<img>\f[R] مشخص نشده باشد، یا صفت‌های عنوان یا خلاصه در عنصر \f[V]<table>\f[R] مشخص نشده باشند. .RS 2 .PP اگر انتظار برود که یک ابزار اعتبارسنجی پایین‌دستی در فایل‌های تولیدشده توسط \f[V]javadoc\f[R] خطایی گزارش دهد، مشکلات به عنوان خطا گزارش می‌شوند. .PP برای مرجع، \f[B]راهنمای دسترسی به محتوای وب (WCAG)\f[R] [https://www.w3.org/WAI/standards-guidelines/wcag] را ببینید. .RE .IP \[bu] 2 \f[V]html\f[R] --- مشکلات رایج سطح بالای HTML را شناسایی می‌کند. برای مثال، قرار دادن عناصر بلوکی درون عناصر درون‌خطی، یا نبستن عناصری که به تگ پایانی نیاز دارند. .RS 2 .PP اگر انتظار برود که یک ابزار اعتبارسنجی پایین‌دستی در فایل‌های تولیدشده توسط \f[V]javadoc\f[R] خطایی گزارش دهد، مشکلات به عنوان خطا گزارش می‌شوند. .PP برای مرجع، \f[B]استاندارد زنده HTML\f[R] [https://html.spec.whatwg.org/multipage] را ببینید. .RE .IP \[bu] 2 \f[V]missing\f[R] --- کامنت‌ها یا تگ‌های مستندسازی گم‌شده را بررسی می‌کند. برای مثال، کامنت گم‌شده در اعلان یک کلاس، یا تگ گم‌شده \f[V]\[at]param\f[R] یا \f[V]\[at]return\f[R] در کامنت برای اعلان یک متد. .RS 2 .PP مشکلات مربوط به موارد گم‌شده معمولاً به عنوان هشدار گزارش می‌شوند زیرا بعید است توسط ابزارهای اعتبارسنجی پایین‌دستی که ممکن است برای بررسی خروجی تولیدشده توسط \f[V]javadoc\f[R] استفاده شوند، به عنوان خطا گزارش شوند. .RE .IP \[bu] 2 \f[V]reference\f[R] --- مشکلات مربوط به ارجاعات به عناصر Java API از تگ‌های کامنت مستندسازی را بررسی می‌کند. برای مثال، ارجاع در \f[V]\[at]see\f[R] یا \f[V]{\[at]link ...}\f[R] یافت نمی‌شود، یا نام نامناسبی برای \f[V]\[at]param\f[R] یا \f[V]\[at]throws\f[R] داده شده است. .RS 2 .PP مشکلات معمولاً به عنوان خطا گزارش می‌شوند زیرا اگرچه ممکن است این مشکل باعث ایجاد نقص در فایل‌های تولیدشده نشود، اما نویسنده احتمالاً مرتکب اشتباهی شده است که منجر به مستندات نادرست یا غیرمنتظره خواهد شد. .RE .IP \[bu] 2 \f[V]syntax\f[R] --- مشکلات نحوی سطح پایین در کامنت‌های مستندسازی را بررسی می‌کند. برای مثال، براکت‌های زاویه‌دار اسکیپ‌نشده (\f[V]<\f[R] و \f[V]>\f[R]) و علامت‌های آمپرسند (\f[V]&\f[R]) و تگ‌های نامعتبر کامنت مستندسازی. .RS 2 .PP مشکلات معمولاً به عنوان خطا گزارش می‌شوند زیرا ممکن است منجر به مستندات نادرست یا غیرمنتظره شوند. .RE .SS "بی‌صدا کردن پیام‌ها (Suppressing Messages)" .PP ابزار DocLint دو رشته را که ممکن است در آرگومان‌های حاشیه‌نویسی \f[V]\[at]SuppressWarnings\f[R] وجود داشته باشند بررسی کرده و تشخیص می‌دهد: .IP \[bu] 2 \f[V]doclint\f[R] .IP \[bu] 2 \f[V]doclint:\f[R]\f[I]فهرست\f[R] .PP که در آن \f[I]فهرست\f[R] یک لیست جداشده با کاما از یک یا چند مورد از \f[V]accessibility\f[R]، \f[V]html\f[R]، \f[V]missing\f[R]، \f[V]syntax\f[R] و \f[V]reference\f[R] است. .PP نام‌های موجود در \f[I]فهرست\f[R] همان نام‌های \f[B]گروه\f[R] هستند که توسط گزینه خط فرمان \f[V]-Xdoclint\f[R] برای \f[V]javac\f[R] و \f[V]javadoc\f[R] پشتیبانی می‌شوند. (این همان قراردادی است که توسط گزینه \f[V]-Xlint\f[R] در \f[V]javac\f[R] و نام‌های متناظر پشتیبانی‌شده توسط \f[V]\[at]SuppressWarnings\f[R] رعایت می‌شود). .PP نام‌های موجود در \f[I]فهرست\f[R] را می‌توان به طور معادل در آرگومان‌های جداگانه حاشیه‌نویسی مشخص کرد. برای مثال موارد زیر معادل هستند: .IP \[bu] 2 \f[V]\[at]SuppressWarnings(\[dq]doclint:accessibility,missing\[dq])\f[R] .IP \[bu] 2 \f[V]\[at]SuppressWarnings(\[dq]doclint:accessibility\[dq], \[dq]doclint:missing\[dq])\f[R] .PP هنگامی که DocLint مشکلی را در یک کامنت مستندسازی تشخیص می‌دهد، وجود \f[V]\[at]SuppressWarnings\f[R] را روی اعلان مربوطه و روی تمام اعلان‌های محصورکننده از نظر لغوی بررسی می‌کند. اگر چنین حاشیه‌نویسی حاوی رشته ساده \f[V]doclint\f[R] یا فرم طولانی‌تر \f[V]doclint:LIST\f[R] (که در آن \f[I]LIST\f[R] حاوی نام گروه مربوط به آن مشکل است) یافت شود، مشکل نادیده گرفته خواهد شد. .PP \f[I]توجه:\f[R] مانند سایر کاربردهای \f[V]\[at]SuppressWarnings\f[R]، استفاده از این حاشیه‌نویسی روی اعلان یک ماژول یا بسته فقط بر همان اعلان تأثیر می‌گذارد؛ بر محتویات ماژول یا بسته در سایر فایل‌های منبع تأثیری ندارد. .PP تمام پیام‌های مربوط به یک مشکل با وجود یک حاشیه‌نویسی مناسب \f[V]\[at]SuppressWarnings\f[R] سرکوب می‌شوند: این شامل خطاها و همچنین هشدارها می‌شود. .PP \f[I]توجه:\f[R] فقط امکان \f[I]بی‌صدا کردن (suppress)\f[R] پیام‌ها وجود دارد. اگر حاشیه‌نویسی \f[V]\[at]SuppressWarnings(\[dq]doclint\[dq])\f[R] روی یک اعلان سطح بالا داده شود، تمام پیام‌های DocLint برای آن اعلان و هر اعلان محصور در آن سرکوب خواهند شد؛ فعال‌سازی مجدد انتخابی پیام‌ها برای مشکلات موجود در اعلان‌های محصور امکان‌پذیر نیست. .SS "مقایسه با ابزارهای اعتبارسنجی پایین‌دستی" .PP ابزار DocLint یک ابزار کاربردی ساخته‌شده در \f[V]javac\f[R] و \f[V]javadoc\f[R] است که محتوای کامنت‌های مستندسازی را همان‌طور که در فایل‌های منبع یافت می‌شوند بررسی می‌کند. در مقابل، ابزارهای اعتبارسنجی پایین‌دستی می‌توانند برای اعتبارسنجی خروجی تولیدشده از آن کامنت‌های مستندسازی توسط \f[V]javadoc\f[R] و داکلت استاندارد استفاده شوند. .PP اگرچه همپوشانی‌هایی در عملکرد وجود دارد، اما این دو مکانیسم متفاوت هستند و هر کدام نقاط قوت و ضعف خاص خود را دارند. .IP \[bu] 2 ابزارهای اعتبارسنجی پایین‌دستی می‌توانند نتیجه نهایی هرگونه مستندات تولیدشده را همان‌طور که توسط کاربر نهایی دیده می‌شود بررسی کنند. این شامل محتوای تمام منابع، از جمله کامنت‌های مستندسازی، خود داکلت استاندارد، تگ‌لت‌های ارائه‌شده توسط کاربر، و محتوای ارائه‌شده از طریق گزینه‌های خط فرمان است. از آنجا که چنین ابزارهایی صفحات کامل HTML را تجزیه و تحلیل می‌کنند، می‌توانند بررسی‌های کامل‌تری نسبت به DocLint انجام دهند. با این حال، هنگامی که مشکلی در صفحات تولیدشده یافت می‌شود، ردیابی دقیق اینکه مشکل در کجای خط لوله ساخت باید برطرف شود، می‌تواند دشوارتر باشد. .IP \[bu] 2 ابزار DocLint محتوای کامنت‌های مستندسازی را در فایل‌های منبع بررسی می‌کند. این امر شناسایی موقعیت دقیق هرگونه مشکل احتمالی را بسیار آسان می‌کند. ابزار DocLint همچنین می‌تواند برخی از خطاهای معنایی را در کامنت‌های مستندسازی که ابزارهای پایین‌دستی قادر به تشخیص آن‌ها نیستند شناسایی کند، مانند کامنت‌های گم‌شده، استفاده از تگ \f[V]\[at]return\f[R] در متدی که \f[V]void\f[R] برمی‌گرداند، یا تگ \f[V]\[at]param\f[R] که یک پارامتر ناموجود را توصیف می‌کند. اما بر حسب ماهیت خود، DocLint نمی‌تواند مشکلاتی مانند پیوندهای گم‌شده، خطاها در تگ‌لت‌های سفارشی ارائه‌شده توسط کاربر، یا مشکلات درون خود داکلت استاندارد را گزارش کند. همچنین نمی‌تواند خطاها را در کامنت‌های مستندسازی در مرزهای بین محتوای موجود در یک کامنت مستندسازی و محتوای تولیدشده توسط یک تگ‌لت سفارشی به طور قابل اعتمادی شناسایی نماید.