মাভেনের সাথে জাভা ইই প্রকল্পগুলি তৈরি করা হচ্ছে


13

আমি প্রায় একবছর ধরে Eclipse এর সাথে জাভা EE ওয়েব অ্যাপ্লিকেশন বিকাশ করছি। আমার নিয়োগকর্তা মাভেন ব্যবহার করেন না, তবে আমি এটির বিষয়ে যত বেশি পড়ি, ততই আমি নিশ্চিত যে মাভেন + হাডসন আমাদের পক্ষে অত্যন্ত উপকারী। প্রথমত, যদিও আমার অবসর সময়ে আমাকে সেই প্রযুক্তিগুলির সাথে স্বাচ্ছন্দ্য বোধ করতে হবে, যাতে আমি একটি প্রমাণ-ধারণাটি তৈরি করতে পারি।

এই মুহূর্তে, আমি এখনও একটি মাভেন নবাগত। মাভেনের সাথে জাভা ইই ওয়েব অ্যাপ্লিকেশন তৈরি করার জন্য কি সেরা অনুশীলনের একটি সেট রয়েছে? উদাহরণস্বরূপ, আমি একটি বেসিক আরচাইটিপ দিয়ে একটি প্রকল্প তৈরি করতে পারি এবং তারপরে সার্লেট ধারক, ইজেবি, এক্সলিপস লিংক ইত্যাদির জন্য পিওএমের উপর নির্ভরতা রেখে সমস্ত প্রয়োজনীয় জেআর যুক্ত করতে পারি ... এটি কার্যকর হতে পারে তবে এটি সেরা নাও হতে পারে এটা করার উপায় আপনি এই বিষয়টিতে যে কোনও দিকনির্দেশনা সরবরাহ করতে পেরেছি তার জন্য আমি তার প্রশংসা করব।

উত্তর:


10

আরকিটাইপস পরে বিরক্ত করবেন না

মাভেন সম্পর্কে আপনার সমস্ত তথ্যের জন্য জানতে হবে, তাদের ওয়েবসাইটে কয়েকটি বই পড়ুন । যাইহোক, আপনি যা অর্জন করার চেষ্টা করছেন তার জন্য এটি ওভারকিলের সামান্য পরিমাণ।

শুরু করতে, ওয়েব অ্যাপ্লিকেশনগুলির জন্য স্ট্যান্ডার্ড মাভেন কাঠামোটি অনুসরণ করে আপনার ওয়েব অ্যাপ্লিকেশনটি নীচে রেখে দিন। (এটির জন্য আপনার কোনও ম্যাভেন আরচাইপের দরকার নেই, এটি কেবলমাত্র স্ট্যান্ডার্ড ফোল্ডারগুলির একটি গুচ্ছ, আপনি এটি 2 মিনিটের মধ্যে তৈরি করতে পারেন)।

  • src/main/java - আপনার উত্পাদন জাভা কোড ধারণ করে
  • src/main/resources - এতে আপনার উত্পাদন শ্রেণিপথ সংস্থান রয়েছে (যেমন বসন্তের প্রসঙ্গ)
  • src/main/webapp - (ওয়েবে-আইএনএফ / ওয়েব.এক্সএমএল রয়েছে তবে কোনও লিবি ফোল্ডার নেই)
  • src/test/java - এতে আপনার পরীক্ষা জাভা কোড রয়েছে
  • src/test/resources - এতে আপনার পরীক্ষার সংস্থান রয়েছে (যেমন ওয়েব পরিষেবা পরীক্ষার জন্য এক্সএমএল ফিডস ইত্যাদি)

বেসিক প্লাগইন

পরবর্তী পদক্ষেপটি হ'ল প্লাগইনগুলির একগুচ্ছ নির্বাচন করা। সাধারণ সন্দেহভাজনরা হ'ল স্পষ্টতই তারা পরিষ্কার, সংকলন এবং সংস্থানগুলি সমর্থন করে (ম্যাভেনের অংশ হিসাবে আসে তবে আপনি সেগুলি কনফিগার করতে পারেন)। তারপরে আপনার কাছে নিশ্চিত ইউনিট পরীক্ষক এবং ওয়ার প্লাগইন থাকবে। খুব বেসিক ওয়েব অ্যাপ্লিকেশন তৈরি করার জন্য এটি যথেষ্ট।

আরও উন্নত প্লাগইন

পরবর্তী পদক্ষেপটি ফাইন্ডব্যাগস এবং পিএমডি প্লাগইনগুলি প্রবর্তন করা যা আপনার কোডটিকে পুরোপুরি এগিয়ে যাবে এবং বিভিন্ন সম্ভাব্য সমস্যার প্রতিবেদন করবে। আপনি সম্ভবত ক্রস-রেফারেন্সিং সোর্স কোডের জন্য জেএক্সআর, টোডো এবং রেফ্যাক্টর ট্যাগগুলি ট্র্যাক করার জন্য ট্যাগলিস্ট এবং আরও কিছু পেতে চাইবেন। সর্বোপরি...

... ওয়েব অ্যাপ্লিকেশনগুলির জন্য জেটি প্লাগইন ব্যবহার করুন

সহজে ডিবাগিংয়ের জন্য আপনার আইডিই-র মধ্যে আপনার ওয়ার ফাইলটি চালনার জন্য জেটি প্লাগইনটি ব্যবহার করুন। এটি দ্রুত এবং ছোট এবং বাস্তব কাজটি দ্রুত সম্পন্ন করে। আপনার মাভেন বিল্ডের অংশ হিসাবে জেটি থাকা আপনার প্রকল্পটিকে কোনও জটিল সার্ভার প্যানেল কনফিগার করা আইডিইর প্রয়োজন ছাড়াই যে কোনও মেশিনে পরীক্ষা করতে সক্ষম করে তোলে। এটি আপনাকে অন্যান্য ওয়ার ওয়ার্কের ফাইলগুলির উপর নির্ভরতা ঘোষণা করার অনুমতি দেয় যার ফলস্বরূপ আপনি একক কমান্ড "এমভিএন ক্লিন জেটি: রান" সহ একাধিক ওয়েব অ্যাপ্লিকেশন সমন্বিত একটি সম্পূর্ণ কার্যকারী পরিবেশ তৈরি করতে পারবেন। এটি যে কোনও জায়গায় কাজ করে এবং আপনি এমনকি পরীক্ষার জেএনডিআই কনফিগারেশন সরবরাহ করতে পারেন যাতে আপনার স্প্রিং-ইনজেকশনের ডেটা উত্সগুলি সমস্ত বাহ্যিকভাবে কনফিগার করা থাকে। যদি আপনি এই জেটি পদ্ধতির মানক বিক্ষোভের এইচটিএমএল পৃষ্ঠার সাথে একত্রিত করেন (src/test/resources/demo.html) আপনি একটি স্থানীয় স্থানীয় পরিবেশ পাওয়ার চেষ্টা করে বিকাশকারী ঘন্টার ওডলগুলি সংরক্ষণ করবেন। একটি আদেশ এবং আপনি সম্পন্ন করেছেন। সহজ।

আপনার আইডিই কনফিগার করছে

মাভেনের সাথে এটি সহজ যেহেতু সমস্ত বড় ছেলেরা এটি সমর্থন করে: গ্রহণ, নেটবিয়ান এবং অবশ্যই আমার ব্যক্তিগত প্রিয় ইন্টেলিজ। Pom.xML এ কেবল আপনার আইডিইটি নির্দেশ করুন এবং এটি আপনার জন্য সমস্ত তালিকাভুক্ত নির্ভরতা কমিয়ে আনার যত্ন নেবে। এর সাথে আর মাতামাতি নেই WEB-INF/lib। Eclipse এ, আপনি সাধারণত ফাইল | ব্যবহার করেন আমদানি ... | মাভেন প্রকল্প | pom.xml।

হাডসনের সাথে একীকরণ করা হচ্ছে

প্রথমে হডসন ইনস্টল করুন (এটি কেবল একটি ওয়েব অ্যাপ্লিকেশন) এবং তারপরে আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমটিকে লক্ষ্য করুন যাতে এটি উপযুক্ত সংস্করণটি পরীক্ষা করে। আপনার চূড়ান্ত পদক্ষেপটি এটি কনফিগার করা যাতে এটি তৈরি করতে মেভেনকে ব্যবহার করে। স্পষ্টতই মাভেন আপনার বিল্ড মেশিনে ইনস্টল করতে হবে (ধরে নিলে এটি আপনার বিকাশ মেশিন থেকে আলাদা)।

হাডসন কেবল স্ন্যাপশট তৈরি করে

হাডসন স্ন্যাপশট বিল্ড সম্পাদন করুন এবং ম্যানুয়াল প্রক্রিয়াতে রিলিজ বিল্ডগুলি ছেড়ে দিন। এই পদ্ধতির ব্যবহারের অর্থ হ'ল বিকাশকারীরা তাদের কোডগুলি স্ন্যাপশট পুনর্বিবেচনার অধীনে ভাগ করতে পারে (উদাঃ 1.0.0-SNAPSHOT) এবং যদি বিল্ডটি পাস করতে সক্ষম হয় তবেই এটি টিম সংগ্রহস্থলে ভাগ করা হবে। সাধারণত, হাডসন "এমভিএন ক্লিন মোতায়েন" সম্পাদন করবেন যদিও "সাইট" লক্ষ্যটিও আপনার প্রক্রিয়ার অংশ হতে পারে কারণ এটি প্রতিটি বিল্ডের জন্য একটি ছোট প্রকল্পের ওয়েবসাইট তৈরি করবে। টিমের বিকাশকারীদের মাভেন নির্ভরতা পরিচালনার প্রক্রিয়াটির মাধ্যমে আপডেট হওয়া স্ন্যাপশট বিল্ডটি তাদের প্রকল্পে স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত থাকবে।

হাডসন এমন অনেকগুলি প্লাগইন সরবরাহ করে যা মেট্রিক্সের সমস্ত পদ্ধতি সমর্থন করতে পারে। আমার ব্যক্তিগত প্রিয় হ'ল সময়ের সাথে সাথে প্রতি প্রকল্পে পাসের পরীক্ষার সংখ্যাটি ট্র্যাক করে রাখা। আপনার ইউনিট পরীক্ষার গণনা এবং কভারেজটি ক্রমবর্ধমান হয় এমন পরিচালনাটি দেখানো দুর্দান্ত।

সাধারণ সেটআপ গাইডেন্স

আপনার সংগ্রহস্থলগুলিকে কমপক্ষে নিম্নলিখিত কাঠামোর মধ্যে বিভক্ত করুন:

  • টিম-রিলিজ - আপনার প্রকাশিত সমস্ত উত্পাদক শিল্পকর্ম এখানে চলে
  • দল-স্ন্যাপশট - আপনার সমস্ত স্ন্যাপশট বিকাশ শিল্পকর্ম এখানে যান
  • তৃতীয় পক্ষের প্রকাশ - আপনার সমস্ত সমর্থনকারী তৃতীয় পক্ষের লাইব্রেরি এখানে যান (যেমন স্প্রিং, হাইবারনেট ইত্যাদি)

বিকাশকারী ব্যবহারকারীর অ্যাকাউন্টগুলি স্ন্যাপশট বা প্রকাশের জন্য টিম সংগ্রহস্থলে লিখতে সক্ষম হবে না। এটি কোনও বিকাশকারী হুডসনকে তাড়াহুড়ো করে ফেলে এবং তাড়াতাড়ি আদর্শ হয়ে উঠবে বলে হডসনকে বাইপাস করতে সক্ষম করবে।

নিশ্চিত হয়ে নিন যে আপনি সর্বদা আপনার সমস্ত তৃতীয় পক্ষের জন্য উত্স, জাভাদোক এবং এসএএ স্বাক্ষর ডাউনলোড করেছেন। ক্লাসগুলি খুঁজে পাওয়া শক্তদের পক্ষে জারওয়ানা হ'ল একটি দুর্দান্ত সংগ্রহস্থল এক্সপ্লোরার।

আপনার ক্রমবর্ধমান সংগ্রহস্থলের উপর আরও ভাল নিয়ন্ত্রণের জন্য নেক্সাস বা আর্টিফ্যাক্টারের মতো একটি সংগ্রহস্থল পরিচালক ইনস্টল করার বিষয়টি বিবেচনা করুন।


2
সোনারও বেশ দুর্দান্ত এবং ম্যাভেন / হাডসনের সাথে ভাল ফিট
কেভিন

1
একেবারে। এই মুহুর্তে, আমি যদি একটি দলে ম্যাভেন প্রকল্পে কাজ করছি তবে আমি একটি স্থানীয় ফাইন্ডব্যাগস / পিএমডি আশা করছিলাম যে ঘাতক সমস্যাগুলি দ্রুত ধরে ফেলতে পারে, তবে জেনকিন্সের পরে সোনার চাকরীটি নেক্সাস বা আর্টিফ্যাক্টরিতে শৈল্পিক স্থাপনার সাহায্যে তৈরি করা হবে। এটি শিল্পকর্মগুলির সহজ অবস্থান সরবরাহ করে এবং প্রকল্প বাস্তুসংস্থান জুড়ে ar শিল্পকর্মগুলির জন্য প্রভাব বিশ্লেষণ ("যেখানে ব্যবহৃত হয়") সরবরাহ করে। গিট, জিরা এবং ফিশেয়ের সাথে মিলিত আপনার কাছে দুর্দান্ত একটি বিকাশ প্রক্রিয়া উপলব্ধ।
গ্যারি রোয়ে

1
গ্যারি, পিডিএফ লিঙ্কটির মেয়াদ শেষ হয়েছে
ব্যবহারকারী 1787812

1

ম্যাভেন এর প্রচুর প্রদান করে ভেসে

mvn archetype:generate

উপলব্ধ একটি তালিকা মুদ্রণ করবে।

জে 2 ই ই আরকিটাইপসগুলির সাথে সাদামা জাভা আরকিটাইপগুলির মধ্যে প্রধান পার্থক্য হ'ল জেএসপি এবং চিত্রগুলির জন্য ডিরেক্টরি তৈরি করা হবে। আপনি যদি কোনও নতুন জে 2 ইই প্রকল্প শুরু করেন তবে শুরু থেকেই তাদের মধ্যে একটির ব্যবহার বিবেচনা করুন।

আপনার প্রকল্পটি বাড়ার সাথে সাথে আপনি আরও নির্ভরতা যুক্ত করতে পারেন। ব্যক্তিগতভাবে আমি নির্ভরতার ন্যূনতম সংগ্রহ (যেমন J2EE বেসিক আরচিটাইপ) দিয়ে শুরু করতে পছন্দ করি এবং তারপরে ধীরে ধীরে আমার যা প্রয়োজন তা যুক্ত করা উচিত।


0

আমি এটি একটি বেসিক আরচাইটিপ থেকে শুরু করে এবং সমস্ত বিট যোগ করে করেছি এবং আমি নিশ্চিত যে এটি খুব ভাল উপায় নয়। তবে আমি দেখতে পাই এটি অন্যভাবেও বিশ্রী; আপনি যদি ইতিমধ্যে "গোপনীয় বিষয়গুলিতে গভীরভাবে পারদর্শী না হন" তবে একটি ভাল আরকিটাইপ টাইপ নির্বাচন করা কঠিন। এগুলি কিছুটা আমার স্বাদের জন্য উইজার্ডলি লোরের মতো (বোধগম্যভাবে আবিষ্কারযোগ্য প্রযুক্তিগত তথ্যের বিপরীতে)…


এবং আমি মনে করি এটি একটি ভাল প্রশ্ন। আশা করি আমার আরও ভাল উত্তর পাওয়া গেল।
ডোনাল ফেলো

এটা অনেক প্রশংসা, স্যার।
মাইকেল

0

ম্যাভেন টেমপ্লেট নামক থেকে প্রকল্প তৈরি করতে একটি উপায় প্রদান করে archetypesইন্টারেক্টিভভাবেmvn archetype:generate একটি বাছাই করতে আপনি কমান্ডটি ব্যবহার করেন । আপনি সরাসরি একটি নির্দিষ্ট করতে পারেন।

mvn archetype:generate \
    -DarchetypeGroupId=org.apache.maven.archetypes \
    -DarchetypeArtifactId=maven-archetype-j2ee-simple \
    -DarchetypeVersion=1.0

সব এক লাইনে।


0

আমি গত তিন মাস ধরে মাভেন এবং হাডসন ব্যবহার করছি। এটি আমাকে সমস্ত ইউনিট পরীক্ষা চালিয়ে টেস্ট রিপোর্ট উত্পন্ন করে নিয়মিতভাবে কোড বেইসের স্বাস্থ্য পরীক্ষা করতে সহায়তা করে। আপনি এটি চেষ্টা করতে পারেন।
আপনি স্প্রিং রুও চেষ্টা করতে পারেন। এটি স্প্রিং ভিত্তিক J2EE প্রকল্প তৈরির জন্য একটি RAD সরঞ্জাম।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.