Eclipse এ স্বয়ংক্রিয়ভাবে JAR তে প্রকল্প তৈরি করুন


171

আমার একটি Eclipse প্রকল্প আছে যেখানে আমি আমার জাভা প্রকল্পটি স্বয়ংক্রিয়ভাবে একটি জেআরতে তৈরি করতে চাই। আমি জানি আমার কাছে প্রকল্পটি একটি জেআর তে রফতানি করার একটি বিকল্প আছে; আমি যদি ডান ক্লিক করি; তবে আমি যা খুঁজছি তা হ'ল, গ্রহটির মতো স্বয়ংক্রিয়ভাবে কোনও প্রকল্পের .classফাইলগুলি তৈরি করে এবং সেগুলি লক্ষ্য ফোল্ডারে রেখে দেয়; এটি স্বয়ংক্রিয়ভাবে একটি জআআআআআআআআআআআআআআআআরআর কোনও কিছু নির্দিষ্ট স্থানে সর্বশেষ জেআরটি অনুলিপি করা উচিত।

স্বয়ংক্রিয়ভাবে জআআআআআআআআআরআরস করার জন্য কীভাবে গ্রহটিকে কনফিগার করার বিকল্প রয়েছে?

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


1
আমার ব্যক্তিগত মতামত: এম 2 ই, অ্যাক্লিপসের মেভেন ইন্টিগ্রেশন ব্যবহার করুন, সুতরাং এটি বিল্ডের অংশ হিসাবে আপনার জন্য একটি জার তৈরি করে। আমি সম্প্রতি ম্যাভেন ছাড়াই Eclipse ব্যবহার করার চেষ্টা করেছি এবং বেসিক জাভা নির্মাতা কতটা আদিম তা বিশ্বাস করতে পারছি না।
ক্রেগ রিঞ্জার

1
2018 এর জন্য IDE নির্দিষ্ট কার্যকারিতার পরিবর্তে একটি বিল্ড টুল ব্যবহার করুন। মাভেন আপনাকে আইডিই স্বাধীনতা এবং কমান্ড লাইন সমর্থন কিনে।
থরবজর্ন রাভন অ্যান্ডারসন

@ ক্রেইগ রিঞ্জার - এটি কীভাবে করা যায় সে সম্পর্কিত কোনও লিঙ্ক আছে?
nsandersen

উত্তর:


27

পরীক্ষা করে দেখুন এ্যাপাচি অ্যান্ট

গ্রহয়ের সাথে স্বয়ংক্রিয়ভাবে বিল্ডগুলির জন্য পিপড়া ব্যবহার করা সম্ভব, এখানে এটি


বিল্ডগুলি করতে এবং জারটি তৈরি করতে আমি ইতিমধ্যে অ্যাপাচি পিপড়া ব্যবহার করছি। তবে আমি যা খুঁজছিলাম তা হ'ল অ্যাপাচি পিঁপড়ার আশেপাশের একটি উপায়, এবং সরাসরি গ্রহন ব্যবহার করা।
প্রিয়ঙ্ক

দুঃখিত, আমি লিঙ্কে আগে নিবন্ধটি মাধ্যমে যায় নি। এটি সত্যই আমার যা প্রয়োজন তা নিয়ে কথা বলে। ধন্যবাদ।
প্রিয়ঙ্ক

1
কনরাডের উত্তর ওপি যা খুঁজছিল তা আরও নিবিড়ভাবে মিলছে।
লাইকনো

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

1
জুলাই ২০১১ এ, @ পিটারের দ্বারা উল্লেখ করা নিবন্ধটি কীভাবে কোনও জার ফাইল তৈরি করতে হবে সে সম্পর্কে আলোচনা করে না।
জেমস মুর

288

আপনি একটি .jardescফাইল চান । এগুলি স্বয়ংক্রিয়ভাবে বন্ধ হয় না, তবে এটি 2 টি ক্লিকের মধ্যে রয়েছে।

  1. আপনার প্রকল্পে ডান ক্লিক করুন
  2. পছন্দ করা Export > Java > JAR file
  3. অন্তর্ভুক্ত ফাইল এবং নাম আউটপুট JAR চয়ন করুন, তারপরে ক্লিক করুন Next
  4. "কর্মক্ষেত্রে এই জারের বিবরণ সংরক্ষণ করুন" পরীক্ষা করুন এবং নতুন .jardescফাইলের জন্য একটি নাম চয়ন করুন

এখন, আপনাকে যা করতে হবে তা হ'ল আপনার .jardescফাইলে ডান ক্লিক করুন এবং চয়ন করুন Create JARএবং এটি এটি একই জায়গায় রফতানি করবে।


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

25
এক্সিলিপ গ্যালিলিওতে, আমাকে আপনার ধাপ 1 ফাইল -> রফতানি -> জাভা -> জেআর ফাইলের সাথে প্রতিস্থাপন করতে হয়েছিল।
ম্যাট হাগিনস

9
'ডান ক্লিক -> জার তৈরি করুন' পদক্ষেপটি স্বয়ংক্রিয় করার কোনও উপায় আছে কি?
আসফ

4
'ডান ক্লিক -> জআআআআআআআআআআআআআ।
পেসারিয়ার

5
এটি তৈরি করতে আমি "রফতানি ... -> জাভা -> চালিতযোগ্য জেআর ফাইল" ব্যবহার করি।
টেড্রিপ্পিন

70

একটি পিঁপড়া ফাইল তৈরি করুন এবং এটি তৈরি করতে Eclipse কে বলুন। কেবল দুটি পদক্ষেপ রয়েছে এবং প্রতিটি নীচের ধাপে ধাপে নির্দেশাবলী দিয়ে সহজ।


পদক্ষেপ 1 একটি বিল্ড.এক্সএমএল ফাইল তৈরি করুন এবং প্যাকেজ এক্সপ্লোরার যুক্ত করুন:

<?xml version="1.0" ?>
<!-- Configuration of the Ant build system to generate a Jar file --> 
<project name="TestMain" default="CreateJar">
  <target name="CreateJar" description="Create Jar file">
        <jar jarfile="Test.jar" basedir="." includes="*.class" />
  </target>
</project>

গ্রহনটি নীচের স্ক্রিনশটের মতো দেখতে হবে। Build.xML এ পিঁপড়া আইকনটি নোট করুন। এক্সিলিপ প্রকল্পে বিল্ড.এক্সএমএল

পদক্ষেপ 2 প্রকল্পের রুট নোডে ডান ক্লিক করুন। - বৈশিষ্ট্যগুলি নির্বাচন করুন - নির্মাতাদের নির্বাচন করুন - নতুন নির্বাচন করুন - পিঁপড়া তৈরি নির্বাচন করুন - প্রধান ট্যাবে, বিন ফোল্ডারে বিল্ড.এক্সএমএল ফাইলের পথটি সম্পূর্ণ করুন ।

পিপড়া নির্মাতা কনফিগারেশন পদক্ষেপ তৈরি করুন - লক্ষ্যগুলি ট্যাব

আউটপুট চেক করুন

এক্সিলিপ আউটপুট উইন্ডো (কনসোল নামে পরিচিত) একটি বিল্ডের পরে নিম্নলিখিতটি দেখানো উচিত:

Buildfile: /home/<user>/src/Test/build.xml

CreateJar:
         [jar] Building jar: /home/<user>/src/Test/Test.jar
BUILD SUCCESSFUL
Total time: 152 milliseconds

সম্পাদনা: @yeoman এবং @betlista দ্বারা কিছু সহায়ক মন্তব্য

@ আইওম্যান আমি মনে করি সঠিক অন্তর্ভুক্তিটি / class হবে, *। ক্লাস নয়, কারণ বেশিরভাগ লোক প্যাকেজ ব্যবহার করে এবং শ্রেণীর ফাইলগুলির জন্য পুনরাবৃত্ত অনুসন্ধানগুলি সমতল অন্তর্ভুক্তির চেয়ে আরও বেশি অর্থবোধ করে

@ ব্যাটলিস্টা আমি এসআরসি ফোল্ডারে বিল্ড.এক্সএমএল না রাখার প্রতিশ্রুতি দিচ্ছি


2
হ্যাঁ, আপনি নিম্নরূপে বিল্ড পদক্ষেপের লক্ষ্যগুলি চয়ন করতে পারেন: একটি ক্লিন, ম্যানুয়াল বিল্ড, অটো বিল্ড এবং ক্লিন চলাকালীন। অটো বিল্ড আপনার যা চান তা আপনাকে দেওয়া উচিত :)
টমাস ব্র্যাট

8
উভয় চেষ্টা করার পরে, এই সমাধানটি কনরাদের চেয়ে অনেক ভাল। এটি আপনার নিজের বিল্ড ফাইলে কিছু পাথ ম্যানুয়ালি বের করা প্রয়োজন তবে এটি স্বয়ংক্রিয়ভাবে বিল্ড (2 টি ক্লিকের পরিবর্তে) এবং সহজে কাস্টমাইজেশনের অনুমতি দেয় (উদাহরণস্বরূপ বিল্ডের পরে জারটি অনুলিপি করুন)। <jar jarfile="dist/mypackage.jar" basedir="bin/" includes="**/*.class" />
মূলটিতে

3
+1 কীভাবে এটি গৃহীত উত্তর নয় এবং এমনকি সর্বাধিক আপিত কোনও ভোটও দেওয়া হয়নি?
জুয়ান গার্সিয়া

2
আপনাকে অনেক ধন্যবাদ. আমি build.xmlসিআরসি ফোল্ডারে না থাকার ক্ষতিপূরণ দিয়ে বলব , তবে বাকীগুলি দুর্দান্ত কাজ করছে, আশ্চর্য!
বেতলিস্তা

1
আমি মনে করি সঠিক অন্তর্ভুক্তটি /। ক্লাস হবে, *। ক্লাস নয়, কারণ বেশিরভাগ লোক প্যাকেজ ব্যবহার করে এবং ক্লাস ফাইলগুলির জন্য পুনরাবৃত্ত অনুসন্ধানগুলি ফ্ল্যাট অন্তর্ভুক্তির চেয়ে আরও বেশি অর্থবোধ করে। আমার +1 ততক্ষণ সরিয়ে ফেলবে কারণ উত্তরটি সাধারণত দাঁড়িয়ে থাকে বলে কাজ করে না।
ইয়োমন

13

গ্রহনে একটি কাস্টম বিল্ডার সংজ্ঞায়িত করে এটি সম্ভব (পিটারের উত্তরের লিঙ্কটি দেখুন)। তবে, আপনার প্রকল্পটি খুব ছোট না হলে এটি অগ্রহণযোগ্যভাবে আপনার কর্মক্ষেত্রটিকে ধীর করতে পারে। ক্লাস ফাইলগুলির জন্য অটোবিল্ড ক্রমবর্ধমান হয়, অর্থাত্ কেবল পরিবর্তনের দ্বারা প্রভাবিত classes ক্লাসগুলি পুনরায় সংযুক্ত করা হয়, তবে প্রতিবার আপনি যখন কোনও পরিবর্তন সংরক্ষণ করেন তখন JAR ফাইলটি পুনর্নির্মাণ এবং সম্পূর্ণ অনুলিপি করতে হবে।


5

পিটারের উত্তর এবং এর সাথে মিশেলের সংযোজন সম্পর্কে আপনি জানতে পারেন যে আমি একটি স্বয়ংক্রিয়ভাবে জাভা প্রকল্পে একটি .jar ফাইল স্বয়ংক্রিয়ভাবে কীভাবে উত্পন্ন করি । কারণ এমনকি আপনার প্রকল্পে আপনার "* .jardesc" ফাইল রয়েছে আপনাকে এটি ম্যানুয়ালি চালাতে হবে। এটি আপনার "গ্রহণের ঝামেলা" কিছুটা শীতল করতে পারে।


1

উপরে টমাস ব্র্যাটের উত্তর ব্যবহার করে , কেবল আপনার বিল্ড.এক্সএমএল সঠিকভাবে কনফিগার করা আছে তা নিশ্চিত করুন:

<?xml version="1.0" ?>
<!-- Configuration of the Ant build system to generate a Jar file --> 
<project name="TestMain" default="CreateJar">
  <target name="CreateJar" description="Create Jar file">
        <jar jarfile="Test.jar" basedir="bin/" includes="**/*.class" />
  </target>
</project>

( ডাবল নক্ষত্রটি লক্ষ্য করুন - এটি সমস্ত উপ-ডিরেক্টরিতে .class ফাইলগুলি সন্ধান করতে বিল্ডকে বলে দেবে))


0

একটি বিল্ডার লঞ্চার তৈরি করা একটি সমস্যা কারণ 2 টি প্রকল্পের একই বহিরাগত সরঞ্জাম বিল্ড নাম থাকতে পারে না। প্রতিটি নাম অনন্য হতে হবে। আমি আমার বিল্ডটি স্বয়ংক্রিয় করতে এবং জেআরটিকে একটি বাহ্যিক স্থানে অনুলিপি করতে বর্তমানে এই সমস্যার মুখোমুখি।

আমি আইবিএম এর জিপ বিল্ডার ব্যবহার করছি, তবে এটি কেবল একটি সহায়তা তবে আসলটি করছেন না।

লোকেরা আইবিএম জিপ ক্রিয়েশন প্লাগইন ব্যবহার করে দেখতে পারেন। http://www.ibm.com/developerworks/websphere/library/techarticles/0112_deboer/deboer2.html#download

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