জাভাডোক অন্য শ্রেণিতে পদ্ধতির সাথে লিঙ্ক


238

বর্তমানে আমি এই জাভাদোক সিনট্যাক্সের সাথে অন্যান্য ক্লাসে পদ্ধতিগুলি উল্লেখ করছি:

@see {@link com.my.package.Class#method()}

এবং আমি ডকুমেন্টেশন থেকে যা বুঝি তা হ'ল এটি করার সঠিক উপায়। তবে এখন মজার অংশে বা হতাশার। আমি যখন এই জাভাদোকটি তৈরি করি আমি প্রথমে নিম্নলিখিত ত্রুটিটি পাই:

warning - Tag @see:illegal character: "123" in "{@link com.my.package.Class#method()}"
warning - Tag @see:illegal character: "64" in "{@link com.my.package.Class#method()}"
warning - Tag @see: reference not found: {@link com.my.package.Class#method()}

এর উত্পাদিত এইচটিএমএল কোডটি হ'ল:

"," <code>com.my.package.Class#method()}</code> ","

এবং অবশ্যই আমার কোনও লিঙ্ক নেই। আমাকে কী ঘটছে, এবং কীভাবে এটি ঠিক করবেন তার কোনও ইঙ্গিত আমাকে বলতে পারেন?

ASCII টেবিলের অক্ষর অনুসারে ঘনঘন জন্য 123 এবং 64 টি represent এবং @ এর প্রতিনিধিত্ব করে, সুতরাং যখন এই সিনট্যাক্সটি ডকুমেন্টেশন অনুসারে সঠিক হয় তখন এই অক্ষরগুলি বৈধ হয় না কেন?


1
শুধু যাচাই করতে ... আপনি জাভাদোক জেনারেটরের ডকুমেন্টেশন পড়েছেন? docs.oracle.com/javase/7/docs/technotes/tools/windows/…
ডায়োগো মোরিরা

আপনি কি com.my.package.Classক্লাসে আমদানি করেছিলেন এই জাভাডকটি লেখা? রেফারেন্স পাওয়া যায়নি অদ্ভুত মনে হয়। অন্যদিকে, আমি তাদের কখনই সম্মিলিতভাবে ব্যবহার করি নি তবে একে অপরের সাথে দ্বন্দ্বের সুযোগ রয়েছে @seeএবং এটির নিজস্ব সেকশন তৈরি করে তা আমাকে অবাক করে না। @link@see
ফ্রিটজ

1
@ ডায়োগোমুরিরা - না আমি ইঞ্জিন সম্পর্কে পড়িনি, তবে আমি এটি পরীক্ষা করে দেখব।
রবার্ট

@ গ্যাম্ব - অবশ্যই এটি আমার আসল জাভাদোক ইনপুট নয় ;-) হ্যাঁ সমস্ত আমদানি ঠিক আছে।
রবার্ট

1
যদি আপনি @seeআপনার জাভাডকটিতে ট্যাগের মান হিসাবে একটি কাঁচা হাইপারলিংক রাখেন তবে অনুরূপ ত্রুটি ঘটে । এই ক্ষেত্রে এটি ঠিক করার জন্য এইচটিএমএল অ্যাঙ্কর উপাদানগুলিতে হাইপারলিংকটি মোড়ুন:/** @see <a href="http://example.com">Example</a> */
সাইবার-সন্ন্যাসী

উত্তর:


280

জাভাডোক ট্যাগের জন্য @see, আপনাকে ব্যবহার করার দরকার নেই @link; জাভাডোক আপনার জন্য একটি লিঙ্ক তৈরি করবে। চেষ্টা

@see com.my.package.Class#method()

এখানে আরও তথ্য @see


এর জন্য ধন্যবাদ, আমি কেবল এই সমাধানটি পরীক্ষা করেছি এবং এটি দুর্দান্ত কাজ করে! তবে আমি অনেক জায়গায় পড়েছি যে কাজটি করার জন্য আপনার লিঙ্কটি ব্যবহার করা উচিত, তাই কিছুটা বিস্ময়কর ...
রবার্ট

7
আপনি @linkঅন্যান্য জায়গাগুলিতে ব্যবহার করতে পারেন যা জাভাদোক ইতিমধ্যে কোনও লিঙ্কে রূপান্তরিত করে না, যেমন বর্ণনার জন্য @paramবর্ণনার জন্য বর্ণনার @returnমূল অংশে ইত্যাদি ইত্যাদি
rgettman

1
আমি যখন এটির চেষ্টা করেছি তখন এটি পদ্ধতিটিকে সরল পাঠ হিসাবে প্রদর্শন করে এটি স্থানীয় পদ্ধতির জন্য আমার @ দের মতো ক্লিকযোগ্য নয়।
জেসিবয়েড

146

সরাইয়া থেকে @seeআরেক শ্রেণী এবং সম্ভবত পদ্ধতি উল্লেখ করা যে ক্লাস হয় একটি সাধারণ ভাবে{@link somepackage.SomeClass#someMethod(paramTypes)} । জাভাডোক বর্ণনার মাঝখানে ব্যবহারযোগ্য হওয়ার সুবিধা রয়েছে।

থেকে javadoc ডকুমেন্টেশন (@link ট্যাগের বিবরণ) :

এই ট্যাগটি @see এর জন্য খুব একই li মূল পার্থক্যটি হ'ল l @ লিঙ্ক the "এছাড়াও দেখুন" বিভাগে লিঙ্কটি রাখার পরিবর্তে একটি ইন-লাইন লিঙ্ক উত্পন্ন করে। এছাড়াও, in @ লিঙ্ক} ট্যাগটি বাকী ইন-লাইন পাঠ্য থেকে আলাদা করতে কোঁকড়া ধনুর্বন্ধনী দিয়ে শুরু হয় এবং শেষ হয়।


68

সুতরাং মূল সমস্যার সমাধান হ'ল আপনার একই লাইনে "@see" এবং "{@ লিঙ্ক ... both" উভয় উল্লেখের প্রয়োজন নেই। "@ লিঙ্ক" ট্যাগটি স্বয়ংসম্পূর্ণ এবং যেমন উল্লেখ করা হয়েছে, আপনি এটিকে জাভাডক ব্লকের যে কোনও জায়গায় রাখতে পারেন। সুতরাং আপনি দুটি পদ্ধতির মিশ্রন করতে পারেন:

/**
 * some javadoc stuff
 * {@link com.my.package.Class#method()}
 * more stuff
 * @see com.my.package.AnotherClass
 */

4
এই গৃহীত উত্তর হওয়া উচিত কারণ অন্য দুটি উত্তর যে '@link' বা '@see' প্রয়োজন দেখাবেন না / ** * / না একক সারি একাধিক সারি মন্তব্যে হতে
Stoycho Andreev

1
@ স্নিপার, {@link }একক সারিতে জাভাদোক মন্তব্যে খুব ভাল কাজ করে, আপনি কি সম্ভবত এই বিষয়টি উল্লেখ করছেন যে তারা যে মন্তব্য দিয়ে শুরু করেছেন তাতে কাজ করে না //? /** */জাভাডোক এবং কোনও জাভাডোক ফাংশনের জন্য প্রয়োজনীয়।
জেস

হ্যাঁ @ জ্যাস আমি ঠিক এর সাথে দেখা করেছি মন্তব্যটি / ** * / হওয়া দরকার, তবে তা নয় //
স্টয়েচো আন্দ্রেভ

6
@ স্নিপার আমি মনে করি না যে এটি গ্রহণযোগ্য উত্তর হওয়া দরকার কারণ এটি শুরু করা জাভাদোক প্রশ্ন - এটি সাধারণত বোঝা উচিত যে জাভাদোক কেবল জাভাদোকের মন্তব্যে কাজ করে।
জেস

@ জেস ধরণের আপনার সাথে একমত, তবে আমি বিশ্বাস করি যে স্ট্যাকওভারফ্লোর মতো তথ্যের উত্সটির উদাহরণ দ্বারা ব্যাখ্যা করা দরকার যা ওরাকল ডকুমেন্টেশন বা অন্য কোনও ডকুমেন্টেশনের উদ্ধৃতি নয়, যা স্পষ্টভাবে পরিষ্কার নয়। এই উত্তরটির একমাত্র উত্তর যার উদাহরণ রয়েছে, উপরের দুটি উত্তর উদ্ধৃতি are
স্টোচো আন্দ্রিভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.