.\" Copyright (c) 1994, 2020, 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.3.1 .\" .TH "JAVADOC" "1" "2021" "JDK 17" "JDK Commands" .hy .SH "نام (NAME)" .PP javadoc \- تولید صفحات HTML مستندات API از فایلهای منبع جاوا .SH "خلاصه دستور (SYNOPSIS)" .PP \f[CB]javadoc\f[R] [\f[I]options\f[R]] [\f[I]packagenames\f[R]] [\f[I]sourcefiles\f[R]] [\f[CB]\@\f[R]\f[I]files\f[R]] .TP .B \f[I]options\f[R] گزینههای خط فرمان را مشخص میکند که با فاصله از هم جدا میشوند. بخشهای \f[B]گزینههای JAVADOC\f[R]، \f[B]گزینههای گسترشیافته\f[R]، \f[B]گزینههای داکلت استاندارد\f[R]، و \f[B]گزینههای اضافی ارائهشده توسط داکلت استاندارد\f[R] را ببینید. .RS .RE .TP .B \f[I]packagenames\f[R] نام بستههایی را که میخواهید مستندسازی کنید مشخص میکند که با فاصله از هم جدا شدهاند، برای مثال \f[CB]java.lang\ java.lang.reflect\ java.awt\f[R]. اگر میخواهید زیربستهها را نیز مستندسازی کنید، از گزینه \f[CB]\-subpackages\f[R] برای مشخص کردن بستهها استفاده کنید. .RS .PP بهطور پیشفرض، \f[CB]javadoc\f[R] به دنبال بستههای مشخصشده در دایرکتوری جاری و زیردایرکتوریهای آن میگردد. از گزینه \f[CB]\-sourcepath\f[R] برای مشخص کردن فهرست دایرکتوریهای محل جستجوی بستهها استفاده کنید. .RE .TP .B \f[I]sourcefiles\f[R] نام فایلهای منبع جاوا را که میخواهید مستندسازی کنید مشخص میکند که با فاصله از هم جدا شدهاند، برای مثال \f[CB]Class.java\ Object.java\ Button.java\f[R]. بهطور پیشفرض، \f[CB]javadoc\f[R] به دنبال کلاسهای مشخصشده در دایرکتوری جاری میگردد. با این حال، میتوانید مسیر کامل فایل کلاس را مشخص کرده و از کاراکترهای عام (wildcard) استفاده کنید، برای مثال \f[CB]/home/src/java/awt/Graphics*.java\f[R]. همچنین میتوانید مسیر را نسبت به دایرکتوری جاری مشخص کنید. .RS .RE .TP .B \f[CB]\@\f[R]\f[I]files\f[R] نام فایلهایی را مشخص میکند که شامل فهرستی از گزینههای ابزار \f[CB]javadoc\f[R]، نام بستهها و نام فایلهای منبع به هر ترتیبی هستند. .RS .RE .SH "توضیحات (DESCRIPTION)" .PP ابزار \f[CB]javadoc\f[R] اعلانها و کامنتهای مستندسازی را در مجموعهای از فایلهای منبع جاوا تجزیه کرده و صفحات HTML متناظری تولید میکند که (بهطور پیشفرض) کلاسهای عمومی و محافظتشده، کلاسهای تو در تو (اما نه کلاسهای داخلی ناشناس)، رابطها، سازندهها، متدها و فیلدها را توصیف میکنند. میتوانید از ابزار \f[CB]javadoc\f[R] برای تولید مستندات API یا مستندات پیادهسازی برای مجموعهای از فایلهای منبع استفاده کنید. .PP میتوانید ابزار \f[CB]javadoc\f[R] را بر روی کل بستهها، فایلهای منبع منفرد، یا هر دو اجرا کنید. هنگام مستندسازی کل بستهها، میتوانید از گزینه \f[CB]\-subpackages\f[R] یا برای پیمایش بازگشتی یک دایرکتوری و زیردایرکتوریهای آن، یا برای ارسال فهرستی صریح از نامهای بسته استفاده کنید. هنگامی که فایلهای منبع منفرد را مستندسازی میکنید، فهرستی از نامهای فایل منبع جاوا را ارسال کنید. برای کسب اطلاعات بیشتر در مورد استفاده از ابزار \f[CB]javadoc\f[R]، بخش \f[B]نمای کلی javadoc\f[R] [https://www.oracle.com/pls/topic/lookup?ctx=en/java/javase/13/tools&id=JSJAV\-GUID\-7A344353\-3BBF\-45C4\-8B28\-15025DDCC643] در Java Platform, Standard Edition Javadoc Guide را ببینید. .SH "انطباق و سازگاری (CONFORMANCE)" .PP داکلت استاندارد محتوای کامنتهای مستندسازی را برای انطباق اعتبارسنجی نمیکند و تلاشی برای تصحیح خطاهای موجود در کامنتهای مستندسازی انجام نمیدهد. به هر کسی که javadoc را اجرا میکند توصیه میشود از مشکلاتی که ممکن است هنگام تولید خروجی ناسازگار یا خروجی حاوی محتوای اجرایی مانند جاوااسکریپت رخ دهد آگاه باشد. داکلت استاندارد ویژگی \f[CB]doclint\f[R] را برای کمک به توسعهدهندگان در تشخیص مشکلات رایج در کامنتهای مستندسازی ارائه میدهد؛ اما همچنین توصیه میشود خروجی تولیدشده با ابزارهای مناسب اعتبارسنجی انطباق و سایر ابزارهای بررسی ارزیابی شود. .PP برای جزئیات بیشتر در مورد الزامات انطباق برای اسناد HTML5، بخش \f[B]الزامات انطباق\f[R] [https://www.w3.org/TR/html5/infrastructure.html#conformance\-requirements] در مشخصات HTML5 را ببینید. برای جزئیات بیشتر در مورد مسائل امنیتی مرتبط با صفحات وب، صفحه \f[B]پروژه امنیت برنامههای کاربردی وب باز (OWASP)\f[R] [https://www.owasp.org] را ببینید. .SH "گزینههای JAVADOC (OPTIONS FOR JAVADOC)" .PP گزینههای اصلی \f[CB]javadoc\f[R] زیر معادل گزینههای متناظر در \f[CB]javac\f[R] هستند. برای توضیحات دقیق استفاده از این گزینهها، بخش \f[I]گزینههای استاندارد\f[R] در \f[B]javac\f[R] را ببینید: .IP \[bu] 2 \f[CB]\-\-add\-modules\f[R] .IP \[bu] 2 \f[CB]\-bootclasspath\f[R] .IP \[bu] 2 \f[CB]\-\-class\-path\f[R]، \f[CB]\-classpath\f[R]، یا \f[CB]\-cp\f[R] .IP \[bu] 2 \f[CB]\-\-enable\-preview\f[R] .IP \[bu] 2 \f[CB]\-encoding\f[R] .IP \[bu] 2 \f[CB]\-extdirs\f[R] .IP \[bu] 2 \f[CB]\-\-limit\-modules\f[R] .IP \[bu] 2 \f[CB]\-\-module\f[R] .IP \[bu] 2 \f[CB]\-\-module\-path\f[R] یا \f[CB]\-p\f[R] .IP \[bu] 2 \f[CB]\-\-module\-source\-path\f[R] .IP \[bu] 2 \f[CB]\-\-release\f[R] .IP \[bu] 2 \f[CB]\-\-source\f[R] یا \f[CB]\-source\f[R] .IP \[bu] 2 \f[CB]\-\-source\-path\f[R] یا \f[CB]\-sourcepath\f[R] .IP \[bu] 2 \f[CB]\-\-system\f[R] .IP \[bu] 2 \f[CB]\-\-upgrade\-module\-path\f[R] .PP گزینههای زیر گزینههای اصلی \f[CB]javadoc\f[R] هستند که معادل گزینه متناظری در \f[CB]javac\f[R] نیستند: .PP \f[B]نکته:\f[R] .PP در ابزارهایی که از گزینههای به سبک \f[CB]\-\-\fR پشتیبانی میکنند، گزینههای به سبک GNU میتوانند به جای فاصله، از علامت مساوی (=) برای جدا کردن نام یک گزینه از مقدار آن استفاده کنند. .TP .B \f[CB]\-breakiterator\f[R] جمله اول را با \f[CB]BreakIterator\f[R] محاسبه میکند. جمله اول در خلاصه بسته، کلاس، یا عضو و همچنین در نمایه الفبایی کپی میشود. کلاس \f[CB]BreakIterator\f[R] برای تعیین پایان جمله برای همه زبانها به جز انگلیسی استفاده میشود. .RS .IP \[bu] 2 الگوریتم پیشفرض پایان جمله انگلیسی \-\-\- در نقطه همراه با یک فاصله یا یک تگ بلوکی HTML مانند \f[CB]
\f[R] متوقف میشود.
.IP \[bu] 2
الگوریتم پایان جمله Breakiterator \-\-\- در نقطه، علامت سؤال، یا علامت تعجب همراه با یک فاصله زمانی که کلمه بعدی با یک حرف بزرگ شروع میشود متوقف میشود.
این برای رسیدگی به اکثر اختصارات در نظر گرفته شده است (مانند "The serial no. is valid"، اما "Mr. Smith" را پردازش نمیکند).
گزینه \f[CB]\-breakiterator\f[R] در تگهای HTML یا جملاتی که با اعداد یا نمادها شروع میشوند متوقف نمیشود.
این الگوریتم در آخرین نقطه در \f[CB]\&../filename\f[R] متوقف میشود، حتی زمانی که در یک تگ HTML جاسازی شده باشد.
.RE
.TP
.B \f[CB]\-doclet\f[R] \f[I]class\f[R]
خروجی را با استفاده از یک داکلت جایگزین تولید میکند.
از نام کاملاً واجد شرایط (fully qualified) استفاده کنید.
این داکلت محتوا را تعریف کرده و خروجی را قالببندی میکند.
اگر گزینه \f[CB]\-doclet\f[R] استفاده نشود، ابزار \f[CB]javadoc\f[R] از داکلت استاندارد برای تولید فرمت پیشفرض HTML استفاده میکند.
این کلاس باید شامل متد \f[CB]start(Root)\f[R] باشد.
مسیر این کلاس شروع توسط گزینه \f[CB]\-docletpath\f[R] تعریف میشود.
.RS
.RE
.TP
.B \f[CB]\-docletpath\f[R] \f[I]path\f[R]
محل یافتن فایلهای کلاس داکلت (مشخصشده با گزینه \f[CB]\-doclet\f[R]) و هر فایل JAR وابسته به آن را مشخص میکند.
اگر فایل کلاس شروع در یک فایل JAR باشد، این گزینه مسیر آن فایل JAR را مشخص میکند.
میتوانید یک مسیر مطلق یا یک مسیر نسبی نسبت به دایرکتوری جاری مشخص کنید.
اگر \f[CB]classpathlist\f[R] شامل چندین مسیر یا فایل JAR باشد، باید با دونقطه (\f[CB]:\f[R]) در لینوکس و نقطهویرگول (\f[CB];\f[R]) در ویندوز از هم جدا شوند.
زمانی که کلاس شروع \f[CB]doclet\f[R] از قبل در مسیر جستجو باشد، این گزینه ضروری نیست.
.RS
.RE
.TP
.B \f[CB]\-exclude\f[R] \f[I]pkglist\f[R]
بهطور بدون قید و شرط، بستههای مشخصشده و زیربستههای آنها را از فهرستی که توسط \f[CB]\-subpackages\f[R] تشکیل شده است مستثنی میکند.
این گزینه آن بستهها را حتی اگر توسط یک گزینه \f[CB]\-subpackages\f[R] قبلی یا بعدی گنجانده شده باشند، حذف میکند.
.RS
.PP
مثال زیر شامل \f[CB]java.io\f[R]، \f[CB]java.util\f[R]، و \f[CB]java.math\f[R] (در میان دیگران) میشود، اما بستههای ریشهدار در \f[CB]java.net\f[R] و \f[CB]java.lang\f[R] را مستثنی میکند.
توجه داشته باشید که این مثالها \f[CB]java.lang.ref\f[R] را که یک زیربسته از \f[CB]java.lang\f[R] است، مستثنی میکنند.
.IP \[bu] 2
\f[B]لینوکس و OS X:\f[R]
.RS 2
.RS
.PP
\f[CB]javadoc\ \-sourcepath\ /home/user/src\ \-subpackages\ java\ \-exclude\ java.net:java.lang\f[R]
.RE
.RE
.IP \[bu] 2
\f[B]ویندوز:\f[R]
.RS 2
.RS
.PP
\f[CB]javadoc\ \-sourcepath\ \\user\\src\ \-subpackages\ java\ \-exclude\ java.net:java.lang\f[R]
.RE
.RE
.RE
.TP
.B \f[CB]\-\-expand\-requires\f[R] \f[I]value\f[R]
به ابزار javadoc دستور میدهد تا مجموعه ماژولهایی را که باید مستندسازی شوند گسترش دهد.
بهطور پیشفرض، فقط ماژولهایی که صریحاً در خط فرمان داده شدهاند مستندسازی میشوند.
از مقادیر زیر پشتیبانی میکند:
.RS
.IP \[bu] 2
\f[CB]transitive\f[R]: علاوه بر این، تمام وابستگیهای انتقالی مورد نیاز آن ماژولها را نیز شامل میشود.
.IP \[bu] 2
\f[CB]all\f[R]: تمام وابستگیها را شامل میشود.
.RE
.TP
.B \f[CB]\-\-help\f[R], \f[CB]\-help\f[R], \f[CB]\-h\f[R], or \f[CB]\-?\f[R]
خلاصهای از گزینههای استاندارد را چاپ میکند.
.RS
.RE
.TP
.B \f[CB]\-\-help\-extra\f[R] or \f[CB]\-X\f[R]
خلاصهای از مجموعه گزینههای اضافی را چاپ میکند.
.RS
.RE
.TP
.B \f[CB]\-J\f[R]\f[I]flag\f[R]
فلگ \f[I]flag\f[R] را مستقیماً به محیط زمان اجرای جاوا (JRE) که ابزار \f[CB]javadoc\f[R] را اجرا میکند ارسال میکند.
برای مثال، اگر باید اطمینان حاصل کنید که سیستم ۳۲ مگابایت حافظه برای پردازش مستندات تولیدشده کنار میگذارد، گزینه \f[CB]\-Xmx\f[R] را به این صورت فراخوانی میکنید:
\f[CB]javadoc\ \-J\-Xmx32m\ \-J\-Xms32m\ com.mypackage\f[R].
توجه داشته باشید که \f[CB]\-Xms\f[R] اختیاری است زیرا فقط اندازه حافظه اولیه را تنظیم میکند، که زمانی مفید است که حداقل مقدار حافظه مورد نیاز را میدانید.
.RS
.PP
هیچ فاصلهای بین \f[CB]J\f[R] و \f[CB]flag\f[R] وجود ندارد.
.PP
از گزینه \f[CB]\-version\f[R] برای گزارش نسخه JRE مورد استفاده برای اجرای ابزار \f[CB]javadoc\f[R] استفاده کنید.
.IP
.nf
\f[CB]
javadoc\ \-J\-version
java\ version\ "10\-ea"\ 2018\-03\-20
Java(TM)\ SE\ Runtime\ Environment\ 18.3\ (build\ 10\-ea+36)
Java\ HotSpot(TM)\ 64\-Bit\ Server\ VM\ 18.3\ (build\ 10\-ea+36,\ mixed\ mode)
\f[R]
.fi
.RE
.TP
.B \f[CB]\-locale\f[R] \f[I]name\f[R]
محلی (locale) را که ابزار \f[CB]javadoc\f[R] هنگام تولید مستندات استفاده میکند مشخص میسازد.
آرگومان نام محلی است، همانطور که در مستندات \f[CB]java.util.Locale\f[R] شرح داده شده است، مانند \f[CB]en_US\f[R] (انگلیسی، ایالات متحده) یا \f[CB]en_US_WIN\f[R] (گونه ویندوز).
.RS
.PP
\f[B]نکته:\f[R]
.PP
گزینه \f[CB]\-locale\f[R] باید جلوتر (در سمت چپ) هر گزینهای قرار گیرد که توسط داکلت استاندارد یا هر داکلت دیگری ارائه میشود.
در غیر این صورت، نوارهای ناوبری به زبان انگلیسی ظاهر میشوند.
این تنها گزینه خط فرمان است که به ترتیب قرارگیری وابسته است.
.PP
مشخص کردن یک محلی باعث میشود ابزار \f[CB]javadoc\f[R] فایلهای منبع آن محلی را برای پیامهایی مانند رشتههای نوار ناوبری، سربرگهای فهرستها و جداول، محتوای فایل راهنما، کامنتهای موجود در فایل \f[CB]stylesheet.css\f[R] و غیره انتخاب کند.
همچنین ترتیب مرتبسازی فهرستهای مرتبشده بر اساس الفبا و جداکننده جمله را برای تعیین پایان جمله اول مشخص میکند.
گزینه \f[CB]\-locale\f[R] محلی متن کامنت مستندسازی مشخصشده در فایلهای منبع کلاسهای مستندشده را تعیین نمیکند.
.RE
.TP
.B \f[CB]\-package\f[R]
فقط کلاسها و اعضای بسته، محافظتشده و عمومی را نمایش میدهد.
.RS
.RE
.TP
.B \f[CB]\-private\f[R]
همه کلاسها و اعضا را نمایش میدهد.
.RS
.RE
.TP
.B \f[CB]\-protected\f[R]
فقط کلاسها و اعضای محافظتشده و عمومی را نمایش میدهد.
این حالت پیشفرض است.
.RS
.RE
.TP
.B \f[CB]\-public\f[R]
فقط کلاسها و اعضای عمومی را نمایش میدهد.
.RS
.RE
.TP
.B \f[CB]\-quiet\f[R]
پیامها را خاموش میکند تا فقط هشدارها و خطاها ظاهر شوند تا مشاهده آنها آسانتر شود.
همچنین رشته \f[CB]version\f[R] را سرکوب میکند.
.RS
.RE
.TP
.B \f[CB]\-\-show\-members\f[R] \f[I]value\f[R]
مشخص میکند کدام اعضا (فیلدها یا متدها) مستندسازی شوند، که در آن \f[I]value\f[R] میتواند هر یک از موارد زیر باشد:
.RS
.IP \[bu] 2
\f[CB]protected\f[R]: مقدار پیشفرض protected است.
.IP \[bu] 2
\f[CB]public\f[R]: فقط مقادیر عمومی را نمایش میدهد.
.IP \[bu] 2
\f[CB]package\f[R]: اعضای عمومی، محافظتشده و بسته را نمایش میدهد.
.IP \[bu] 2
\f[CB]private\f[R]: تمام اعضا را نمایش میدهد.
.RE
.TP
.B \f[CB]\-\-show\-module\-contents\f[R] \f[I]value\f[R]
سطح جزئیات مستندسازی اعلانهای ماژول را مشخص میکند، که در آن \f[I]value\f[R] میتواند \f[CB]api\f[R] یا \f[CB]all\f[R] باشد.
.RS
.RE
.TP
.B \f[CB]\-\-show\-packages\f[R] \f[I]value\f[R]
مشخص میکند کدام بستههای ماژول مستندسازی شوند، که در آن \f[I]value\f[R] میتواند بستههای صادرشده (\f[CB]exported\f[R]) یا تمام بستهها (\f[CB]all\f[R]) باشد.
.RS
.RE
.TP
.B \f[CB]\-\-show\-types\f[R] \f[I]value\f[R]
مشخص میکند کدام نوعها (کلاسها، رابطها و غیره) مستندسازی شوند، که در آن \f[I]value\f[R] میتواند هر یک از موارد زیر باشد:
.RS
.IP \[bu] 2
\f[CB]protected\f[R]: مقدار پیشفرض.
نوعهای عمومی و محافظتشده را نمایش میدهد.
.IP \[bu] 2
\f[CB]public\f[R]: فقط مقادیر عمومی را نمایش میدهد.
.IP \[bu] 2
\f[CB]package\f[R]: نوعهای عمومی، محافظتشده و بسته را نمایش میدهد.
.IP \[bu] 2
\f[CB]private\f[R]: تمام نوعها را نمایش میدهد.
.RE
.TP
.B \f[CB]\-subpackages\f[R] \f[I]subpkglist\f[R]
مستندات را از فایلهای منبع در بستههای مشخصشده و بهطور بازگشتی در زیربستههای آنها تولید میکند.
این گزینه هنگام افزودن زیربستههای جدید به کد منبع مفید است زیرا آنها بهطور خودکار گنجانده میشوند.
هر آرگومان بسته، هر زیربسته سطح بالا (مانند \f[CB]java\f[R]) یا بسته کاملاً واجد شرایط (مانند \f[CB]javax.swing\f[R]) است که نیازی به داشتن فایلهای منبع ندارد.
آرگومانها در تمام سیستمهای عامل با دونقطه از هم جدا میشوند.
استفاده از کاراکترهای عام (wildcard) مجاز نیست.
از \f[CB]\-sourcepath\f[R] برای مشخص کردن محل یافتن بستهها استفاده کنید.
این گزینه فایلهای منبعی را که در درخت منبع هستند اما به بستهها تعلق ندارند پردازش نمیکند.
.RS
.PP
برای مثال، دستورات زیر مستندات را برای بستههایی به نام \f[CB]java\f[R] و \f[CB]javax.swing\f[R] و تمام زیربستههای آنها تولید میکنند.
.IP \[bu] 2
\f[B]لینوکس و OS X:\f[R]
.RS 2
.RS
.PP
\f[CB]javadoc\ \-d\ docs\ \-sourcepath\ /home/user/src\ \-subpackages\ java:javax.swing\f[R]
.RE
.RE
.IP \[bu] 2
\f[B]ویندوز:\f[R]
.RS 2
.RS
.PP
\f[CB]javadoc\ \-d\ docs\ \-sourcepath\ \\user\\src\ \-subpackages\ java:javax.swing\f[R]
.RE
.RE
.RE
.TP
.B \f[CB]\-verbose\f[R]
پیامهای با جزئیات بیشتر را در حین اجرای ابزار \f[CB]javadoc\f[R] ارائه میدهد.
بدون گزینه \f[CB]\-verbose\f[R]، پیامها برای بارگیری فایلهای منبع، تولید مستندات (یک پیام به ازای هر فایل منبع) و مرتبسازی ظاهر میشوند.
گزینه \f[CB]\-verbose\f[R] باعث چاپ پیامهای اضافی میشود که تعداد میلیثانیهها را برای تجزیه هر فایل منبع جاوا مشخص میکند.
.RS
.RE
.TP
.B \f[CB]\-\-version\f[R]
اطلاعات نسخه را چاپ میکند.
.RS
.RE
.TP
.B \f[CB]\-Werror\f[R]
در صورت بروز هرگونه هشدار، یک خطا گزارش میدهد.
.RS
.RE
.SH "گزینههای گسترشیافته (EXTENDED OPTIONS)"
.PP
\f[B]نکته:\f[R]
.PP
گزینههای گسترشیافته برای \f[CB]javadoc\f[R] ممکن است بدون اطلاع قبلی تغییر کنند.
.PP
گزینههای گسترشیافته \f[CB]javadoc\f[R] زیر معادل گزینههای متناظر در \f[CB]javac\f[R] هستند.
برای توضیحات دقیق استفاده از این گزینهها، بخش \f[I]گزینههای اضافی\f[R] در \f[B]javac\f[R] را ببینید:
.IP \[bu] 2
\f[CB]\-\-add\-exports\f[R]
.IP \[bu] 2
\f[CB]\-\-add\-reads\f[R]
.IP \[bu] 2
\f[CB]\-\-patch\-module\f[R]
.IP \[bu] 2
\f[CB]\-Xmaxerrs\f[R]
.IP \[bu] 2
\f[CB]\-Xmaxwarns\f[R]
.SH "گزینههای داکلت استاندارد (STANDARD DOCLET OPTIONS)"
.PP
گزینههای زیر توسط داکلت استاندارد ارائه شدهاند.
.TP
.B \f[CB]\-\-add\-stylesheet\f[R] \f[I]file\f[R]
یک فایل شیوهنامه (stylesheet) اضافی به مستندات تولیدشده اضافه میکند.
این گزینه میتواند یک یا چند بار برای مشخص کردن شیوهنامههای اضافی گنجاندهشده در مستندات استفاده شود.
.RS
.PP
مثال خط فرمان:
.RS
.PP
\f[CB]javadoc\ \-\-add\-stylesheet\ new_stylesheet_1.css\ \-\-add\-stylesheet\ new_stylesheet_2.css\ pkg_foo\f[R]
.RE
.RE
.TP
.B \f[CB]\-\-allow\-script\-in\-comments\f[R]
به جاوااسکریپت در گزینهها و کامنتها اجازه میدهد.
.RS
.RE
.TP
.B \f[CB]\-author\f[R]
متن \f[CB]\@author\f[R] را در اسناد تولیدشده شامل میشود.
.RS
.RE
.TP
.B \f[CB]\-bottom\f[R] \f[I]html\-code\f[R]
متنی را که باید در پایین هر فایل خروجی قرار گیرد مشخص میکند.
متن در پایین صفحه، زیر نوار ناوبری پایینی قرار میگیرد.
متن میتواند حاوی تگهای HTML و فاصله باشد، اما در این صورت، متن باید در علامت نقلقول قرار گیرد.
برای هرگونه علامت نقلقول داخلی در متن، از نویسههای گریز (escape) استفاده کنید.
.RS
.RE
.TP
.B \f[CB]\-charset\f[R] \f[I]name\f[R]
مجموعه نویسه (character set) HTML را برای این سند مشخص میکند.
نام باید یک نام ترجیحی MIME باشد همانطور که در \f[B]ثبت IANA، مجموعههای نویسه\f[R]
[http://www.iana.org/assignments/character\-sets] مشخص شده است.
.RS
.PP
برای مثال:
.RS
.PP
\f[CB]javadoc\ \-charset\ "iso\-8859\-1"\ mypackage\f[R]
.RE
.PP
این دستور خط زیر را در سربرگ هر صفحه تولیدشده درج میکند:
.RS
.PP
\f[CB]\f[R]
.RE
.PP
تگ \f[CB]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
.B \f[CB]\-d\f[R] \f[I]directory\f[R]
دایرکتوری مقصدی را مشخص میکند که ابزار \f[CB]javadoc\f[R] فایلهای HTML تولیدشده را در آن ذخیره میکند.
اگر گزینه \f[CB]\-d\f[R] را حذف کنید، فایلها در دایرکتوری جاری ذخیره میشوند.
مقدار \f[CB]directory\f[R] میتواند مطلق یا نسبی نسبت به دایرکتوری کاری جاری باشد.
دایرکتوری مقصد هنگام اجرای ابزار \f[CB]javadoc\f[R] بهطور خودکار ایجاد میشود.
.RS
.IP \[bu] 2
\f[B]لینوکس و OS X:\f[R] برای مثال، دستور زیر مستندات را برای بسته \f[CB]com.mypackage\f[R] تولید کرده و نتایج را در دایرکتوری \f[CB]/user/doc/\f[R] ذخیره میکند:
.RS 2
.RS
.PP
\f[CB]javadoc\ \-d\ /user/doc/\ com.mypackage\f[R]
.RE
.RE
.IP \[bu] 2
\f[B]ویندوز:\f[R] برای مثال، دستور زیر مستندات را برای بسته \f[CB]com.mypackage\f[R] تولید کرده و نتایج را در دایرکتوری \f[CB]\\user\\doc\\\f[R] ذخیره میکند:
.RS 2
.RS
.PP
\f[CB]javadoc\ \-d\ \\user\\doc\\\ com.mypackage\f[R]
.RE
.RE
.RE
.TP
.B \f[CB]\-docencoding\f[R] \f[I]name\f[R]
کدگذاری فایلهای HTML تولیدشده را مشخص میکند.
نام باید یک نام ترجیحی MIME باشد همانطور که در \f[B]ثبت IANA، مجموعههای نویسه\f[R]
[http://www.iana.org/assignments/character\-sets] مشخص شده است.
.RS
.PP
سه گزینه برای استفاده در دستور کدگذاری \f[CB]javadoc\f[R] موجود است.
گزینه \f[CB]\-encoding\f[R] برای کدگذاری فایلهای خواندهشده توسط ابزار \f[CB]javadoc\f[R] استفاده میشود، در حالی که گزینههای \f[CB]\-docencoding\f[R] و \f[CB]\-charset\f[R] برای کدگذاری فایلهای نوشتهشده توسط ابزار استفاده میشوند.
از سه گزینه موجود، حداکثر یک گزینه کدگذاری ورودی و یک گزینه کدگذاری خروجی در یک دستور کدگذاری استفاده میشوند.
اگر هر دو گزینه کدگذاری ورودی و خروجی را در یک دستور مشخص کنید، باید مقدار یکسانی داشته باشند.
اگر هیچ گزینه خروجی را مشخص نکنید، ابزار بهطور پیشفرض از کدگذاری ورودی استفاده میکند.
.PP
برای مثال:
.RS
.PP
\f[CB]javadoc\ \-docencoding\ "iso\-8859\-1"\ mypackage\f[R]
.RE
.RE
.TP
.B \f[CB]\-docfilessubdirs\f[R]
زیردایرکتوریهای doc\-file را بهطور بازگشتی کپی میکند.
کپی عمیق دایرکتوریهای doc\-files را فعال میکند.
زیردایرکتوریها و تمام محتویات بهطور بازگشتی در مقصد کپی میشوند.
برای مثال، دایرکتوری \f[CB]doc\-files/example/images\f[R] و تمام محتویات آن کپی میشوند.
همچنین گزینهای برای مستثنی کردن زیردایرکتوریها وجود دارد.
.RS
.RE
.TP
.B \f[CB]\-doctitle\f[R] \f[I]html\-code\f[R]
عنوانی را برای قرار دادن نزدیک بالای فایل خلاصه نمای کلی (overview summary) مشخص میکند.
متن مشخصشده در تگ \f[CB]title\f[R] به عنوان یک سربرگ سطح اولِ وسطچین، مستقیماً زیر نوار ناوبری بالایی قرار میگیرد.
تگ \f[CB]title\f[R] میتواند حاوی تگهای HTML و فاصله باشد، اما در این صورت باید عنوان را در علامت نقلقول قرار دهید.
علامتهای نقلقول اضافی در تگ \f[CB]title\f[R] باید گریز داده شوند (escaped).
برای مثال،
\f[CB]javadoc\ \-doctitle\ "My\ Library
v1.0"\ com.mypackage.\f[R]
.RS
.RE
.TP
.B \f[CB]\-excludedocfilessubdir\f[R] \f[I]name\f[R]
هر زیردایرکتوری doc files با نام دادهشده را مستثنی میکند.
بخش \f[B]\f[VB]-docfilessubdirs\f[B]\f[R] را ببینید.
.RS
.RE
.TP
.B \f[CB]\-footer\f[R] \f[I]html\-code\f[R]
متن پاورقی را برای قرار دادن در پایین هر فایل خروجی مشخص میکند.
مقدار \f[CB]html\-code\f[R] در سمت راست نوار ناوبری پایینی قرار میگیرد.
مقدار \f[CB]html\-code\f[R] میتواند حاوی تگهای HTML و فاصله باشد، اما در این صورت، مقدار \f[CB]html\-code\f[R] باید در علامت نقلقول قرار گیرد.
از نویسههای گریز برای هرگونه علامت نقلقول داخلی در پاورقی استفاده کنید.
.RS
.RE
.TP
.B \f[CB]\-group\f[R] \f[I]namep1\f[R]\f[CB]:\f[R]\f[I]p2\f[R]
بستههای مشخصشده را در صفحه نمای کلی (Overview) با هم گروهبندی میکند.
.RS
.RE
.TP
.B \f[CB]\-header\f[R] \f[I]html\-code\f[R]
متن سربرگ را برای قرار دادن در بالای هر فایل خروجی مشخص میکند.
سربرگ در سمت راست نوار ناوبری بالایی قرار میگیرد.
مقدار \f[CB]header\f[R] میتواند حاوی تگهای HTML و فاصله باشد، اما در این صورت، \f[CB]header\f[R] باید در علامت نقلقول قرار گیرد.
از نویسههای گریز برای علامتهای نقلقول داخلی در سربرگ استفاده کنید.
برای مثال،
\f[CB]javadoc\ \-header\ "My\ Library
v1.0"\ com.mypackage.\f[R]
.RS
.RE
.TP
.B \f[CB]\-helpfile\f[R] \f[I]filename\f[R]
فایلی را که به پیوند \f[B]HELP\f[R] در نوارهای ناوبری بالا و پایین متصل میشود، شامل میسازد.
بدون این گزینه، ابزار \f[CB]javadoc\f[R] یک فایل راهنما به نام \f[CB]help\-doc.html\f[R] ایجاد میکند که در ابزار \f[CB]javadoc\f[R] به صورت کد سخت قرار دارد.
این گزینه به شما امکان میدهد مقدار پیشفرض را لغو کنید.
\f[I]filename\f[R] میتواند هر نامی باشد و محدود به \f[CB]help\-doc.html\f[R] نیست.
ابزار \f[CB]javadoc\f[R] پیوندهای موجود در نوار ناوبری را بر این اساس تنظیم میکند.
برای مثال:
.RS
.IP \[bu] 2
\f[B]لینوکس و OS X:\f[R]
.RS 2
.RS
.PP
\f[CB]javadoc\ \-helpfile\ /home/user/myhelp.html\ java.awt.\f[R]
.RE
.RE
.IP \[bu] 2
\f[B]ویندوز:\f[R]
.RS 2
.RS
.PP
\f[CB]javadoc\ \-helpfile\ C:\\user\\myhelp.html\ java.awt.\f[R]
.RE
.RE
.RE
.TP
.B \f[CB]\-html5\f[R]
این گزینه بیاثر (no\-op) است و صرفاً برای سازگاری با گذشته حفظ شده است.
.RS
.RE
.TP
.B \f[CB]\-\-javafx\f[R] or \f[CB]\-javafx\f[R]
قابلیت JavaFX را فعال میکند.
.RS
.RE
.TP
.B \f[CB]\-keywords\f[R]
تگهای کلمه کلیدی \f[CB]\f[R] در HTML را برای هر کلاس به فایل تولیدشده اضافه میکند.
این تگها میتوانند به موتورهای جستجویی که به دنبال تگهای \f[CB]\f[R] میگردند در یافتن صفحات کمک کنند.
اکثر موتورهای جستجو که کل اینترنت را جستجو میکنند به تگهای \f[CB]\f[R] نگاه نمیکنند، زیرا صفحات ممکن است از آنها سوءاستفاده کنند.
موتورهای جستجوی ارائهشده توسط شرکتهایی که جستجوهای خود را به وبسایت خود محدود میکنند، میتوانند از بررسی تگهای \f[CB]\f[R] بهرهمند شوند.
تگهای \f[CB]\f[R] شامل نام کاملاً واجد شرایط کلاس و نامهای غیر واجد شرایط فیلدها و متدها هستند.
سازندهها گنجانده نمیشوند زیرا با نام کلاس یکسان هستند.
برای مثال، کلاس \f[CB]String\f[R] با این کلمات کلیدی شروع میشود:
.RS
.IP
.nf
\f[CB]
\f[R]
.fi
.RE
.TP
.B \f[CB]\-link\f[R] \f[I]url\f[R]
پیوندهایی به مستندات موجودِ تولیدشده توسط \f[CB]javadoc\f[R] از کلاسهای دارای ارجاع خارجی ایجاد میکند.
آرگومان \f[I]url\f[R] نشانی وب مطلق یا نسبی دایرکتوری حاوی مستندات تولیدشده خارجی \f[CB]javadoc\f[R] است.
میتوانید چندین گزینه \f[CB]\-link\f[R] را در یک اجرای ابزار \f[CB]javadoc\f[R] مشخص کنید تا به چندین سند پیوند داده شود.
.RS
.PP
باید یک فایل \f[CB]package\-list\f[R] یا \f[CB]element\-list\f[R] در این دایرکتوری \f[I]url\f[R] وجود داشته باشد (در غیر این صورت، از گزینه \f[CB]\-linkoffline\f[R] استفاده کنید).
.PP
\f[B]نکته:\f[R]
.PP
فایلهای \f[CB]package\-list\f[R] و \f[CB]element\-list\f[R] توسط ابزار \f[CB]javadoc\f[R] هنگام تولید مستندات API ایجاد میشوند و نباید توسط کاربر تغییر داده شوند.
.PP
هنگامی که از ابزار \f[CB]javadoc\f[R] برای مستندسازی بستهها استفاده میکنید، از فایل \f[CB]package\-list\f[R] برای تعیین بستههای اعلانشده در یک API استفاده میکند.
هنگامی که اسناد API را برای ماژولها تولید میکنید، ابزار \f[CB]javadoc\f[R] از فایل \f[CB]element\-list\f[R] برای تعیین ماژولها و بستههای اعلانشده در یک API استفاده میکند.
.PP
ابزار \f[CB]javadoc\f[R] نامها را از فایل فهرست مناسب میخواند و سپس به بستهها یا ماژولها در آن نشانی وب پیوند میدهد.
.PP
هنگامی که ابزار \f[CB]javadoc\f[R] اجرا میشود، مقدار \f[I]url\f[R] در پیوندهای \f[CB]\f[R] ایجادشده کپی میشود.
بنابراین، \f[I]url\f[R] باید نشانی وب دایرکتوری باشد و نه یک فایل.
.PP
میتوانید از پیوند مطلق برای \f[I]url\f[R] استفاده کنید تا اسناد شما بتوانند به سندی در هر وبسایتی پیوند داده شوند، یا میتوانید از پیوند نسبی برای پیوند دادن صرفاً به یک مکان نسبی استفاده کنید.
اگر از پیوند نسبی استفاده میکنید، مقداری که ارسال میکنید باید مسیر نسبی از دایرکتوری مقصد (مشخصشده با گزینه \f[CB]\-d\f[R]) به دایرکتوری حاوی بستههای پیوندشده باشد.
هنگامی که یک پیوند مطلق را مشخص میکنید، معمولاً از پیوند HTTP استفاده میکنید.
با این حال، اگر میخواهید به یک فایلسیستم که فاقد وبسرور است پیوند دهید، میتوانید از پیوند فایل استفاده کنید.
تنها زمانی از پیوند فایل استفاده کنید که هر کسی که میخواهد به مستندات تولیدشده دسترسی داشته باشد، همان سیستم فایل را به اشتراک بگذارد.
در همه موارد و در تمام سیستمهای عامل، از اسلش به عنوان جداکننده استفاده کنید، چه URL مطلق باشد یا نسبی، و \f[CB]https:\f[R]، \f[CB]http:\f[R]، یا \f[CB]file:\f[R] همانطور که در \f[B]یادداشت URL: مکانیابهای یکنواخت منبع\f[R] [http://www.ietf.org/rfc/rfc1738.txt] مشخص شده است.
.IP
.nf
\f[CB]
\-link\ https://\f[R] مشخص نشده باشد).
.IP \[bu] 2
\f[CB]html\f[R]: مسائل سطح بالای HTML را شناسایی میکند، مانند قرار دادن عناصر بلوکی درون عناصر درونخطی، یا نبستن عناصری که به تگ پایانی نیاز دارند.
قوانین از \f[B]مشخصات HTML 4\f[R]
[https://www.w3.org/TR/html4] یا \f[B]مشخصات HTML 5\f[R]
[http://www.w3.org/TR/2014/REC\-html5\-20141028] بر اساس تولید خروجی \f[CB]html\f[R] داکلت استانداردِ انتخابشده مشتق شدهاند.
این نوع بررسی ابزار \f[CB]javadoc\f[R] را قادر میسازد تا مشکلات HTML را که برخی مرورگرها ممکن است به درستی تفسیر نکنند شناسایی کند.
.IP \[bu] 2
\f[CB]missing\f[R]: کامنتها یا تگهای مستندسازی گمشده را بررسی میکند (برای مثال، یک کامنت یا کلاس گمشده، یا یک تگ \f[CB]\@return\f[R] گمشده یا تگ مشابه روی یک متد).
.IP \[bu] 2
\f[CB]reference\f[R]: مشکلات مربوط به ارجاعات به عناصر Java API از تگهای کامنت مستندسازی را بررسی میکند (برای مثال، موردی که در \f[CB]\@see\f[R] یافت نشد، یا نام نامناسب بعد از \f[CB]\@param\f[R]).
.IP \[bu] 2
\f[CB]syntax\f[R]: مشکلات سطح پایین مانند براکتهای زاویهدار اسکیپنشده (\f[CB]<\f[R] و \f[CB]>\f[R]) و آمپرسندها (\f[CB]&\f[R]) و تگهای نامعتبر کامنت مستندسازی را بررسی میکند.
.PP
میتوانید گزینه \f[CB]\-Xdoclint\f[R] را چندین بار مشخص کنید تا بررسی خطاها و هشدارها در دستههای مختلف فعال شود.
به عنوان روش دیگر، میتوانید چندین دسته خطا و هشدار را با استفاده از گزینههای قبلی مشخص کنید.
برای مثال، از هر یک از دستورات زیر برای بررسی مشکلات HTML، نحو و دسترسپذیری در فایل \f[I]filename\f[R] استفاده کنید.
.RS
.PP
\f[CB]javadoc\ \-Xdoclint:html\ \-Xdoclint:syntax\ \-Xdoclint:accessibility\f[R]
\f[I]filename\f[R]
.RE
.RS
.PP
\f[CB]javadoc\ \-Xdoclint:html,syntax,accessibility\f[R] \f[I]filename\f[R]
.RE
.PP
\f[B]نکته:\f[R]
.PP
ابزار \f[CB]javadoc\f[R] کامل بودن این بررسیها را تضمین نمیکند.
بهویژه، این یک بررسیکننده کامل انطباق HTML نیست.
هدف از گزینه \-\f[CB]Xdoclint\f[R] این است که ابزار \f[CB]javadoc\f[R] را قادر سازد تا اکثریت خطاهای رایج را گزارش کند.
.PP
ابزار \f[CB]javadoc\f[R] تلاشی برای تصحیح ورودی نامعتبر نمیکند، فقط آن را گزارش میدهد.
.RE
.TP
.B \f[CB]\-Xdoclint/package:\f[R][\f[CB]\-\f[R]]\f[I]packages\f[R]
بررسیها را در بستههای خاص فعال یا غیرفعال میکند.
\f[I]packages\f[R] یک فهرست جداشده با کاما از مشخصکنندههای بسته است.
یک مشخصکننده بسته یا یک نام واجد شرایط از یک بسته است یا یک پیشوند نام بسته که به دنبال آن \f[CB]*\f[R] آمده باشد، که به تمام زیربستههای بسته دادهشده گسترش مییابد.
مشخصکننده بسته را با \f[CB]\-\f[R] پیشوند دهید تا بررسیها برای بستههای مشخصشده غیرفعال شوند.
.RS
.RE
.TP
.B \f[CB]\-Xdocrootparent\f[R] \f[I]url\f[R]
تمام موارد \f[CB]\@docRoot\f[R] که بعد از آنها \f[CB]/..\f[R] در کامنتهای Javadoc آمده است را با \f[I]url\f[R] جایگزین میکند.
.RS
.RE