জাভাতে জেভিএম পরিবর্তন করা


18

আমি সম্প্রতি উইকি পৃষ্ঠায় বিভিন্ন জেভিএমের সন্ধান করেছি এবং ভেবেছিলাম যে আমি টিঙ্কিং শুরু করব। যদিও উবুন্টুতে জাভা কনফিগার করা যায় সে সম্পর্কে ডকুমেন্টেশনগুলি খুঁজে পাওয়া মুশকিল।

যাক আমি যে জেআরই বা জেডিকে ব্যবহার করছি তা পরিবর্তন করতে চাই, আমি টার্মিনালটি খুলে বলতে পারি

sudo update-alternatives --config java

এবং তারপরে ইনস্টল করা সংস্করণগুলির একটি থেকে চয়ন করুন।

যদি আমি জেভিএমের অধিকারটি বুঝতে পারি (যা আমি খুব ভাল নাও হতে পারি), আপনি বিকল্প জেভিএম এর (উদা জেএমভিএম) ব্যবহার করতে ওপেনজেডিকে কনফিগার করতে পারেন এবং এটিকে চালিয়ে যেতে পারেন

jamvm -jar foo.jar

2 টি প্রশ্ন,

1: আমার কাছে কী কোনও জেভিএমের ধারণাটি সঠিক? হিসাবে হিসাবে, এটা কি সম্ভব?

2: যদি তা হয় তবে আমি কীভাবে JVM কনফিগার করব এবং ডিফল্টটিকে আমার পছন্দের কোনও JVM এ স্যুইচ করব?


দুর্দান্ত, আপনার প্রশ্নের ভাল উত্তর যুক্ত করুন (আপনি তাদের নিজেরাই উত্তর দিতে পারেন) এবং কিছুটা ভোট পান!
ব্রুনো পেরেইরা

@ ব্রুনোপীরেরা হয়ে গেল! আশাকরি গুচ্ছটি জুড়ে
ওভারটোন

উত্তর:


18

রানটাইমে জাওয়ার সাথে টিঙ্কারিংয়ের রেফারেন্স হিসাবে এটিকে নির্দ্বিধায় ব্যবহার করুন।

আপনার জেআরই নির্বাচন করা হচ্ছে

আপনার জেআরই চয়ন করতে, ব্যবহার করুন

sudo update-alternatives --config java

এটি নিম্নলিখিত আউটপুট মত কিছু দিতে হবে।

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-6-openjdk/jre/bin/java         1061      auto mode
* 1            /usr/lib/jvm/java-6-openjdk/jre/bin/java         1061      manual mode
  2            /usr/lib/jvm/java-6-sun/jre/bin/java             63        manual mode
  3            /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java   1051      manual mode

তারপরে আপনি নাম্বার নির্বাচনের মাধ্যমে যা জাভা রানটাইম চান তা নির্বাচন করতে পারেন।


আপনার জেভিএম চয়ন করা

সান / ওরাকল দুটি জেভিএম পছন্দ রয়েছে, -সভার এবং ক্লায়েন্ট। আপনি যদি আপনার জাভা রানটাইম পরিবেশ হিসাবে ওপেনজেডিকে নির্বাচন করেন তবে আপনার অতিরিক্ত বিকল্প রয়েছে।

আপনি যখন javaঅন্য কোনও প্যারামিটার ছাড়াই টার্মিনালে টাইপ করেন, সহায়তাটি বেশ কয়েকটি alচ্ছিক ভিএম তালিকাভুক্ত করে। আমি নিশ্চিত না যে ওপেনজেডিকে নিয়ে কোনটি আসে তবে 3 জন জনপ্রিয় জ্যামভিএম, জিরো এবং কাকাও

এগুলি ব্যবহার করতে, কেবল টাইপ করুন

java -jamvm 'your other parameters here'
java -cacao 'your other parameters here'
java -zero 'your other parameters here'
java -server 'your other parameters here

-সেভার ভিএম সাধারণত ডিফল্ট হয়। আপনি উল্লেখ করতে পারেন -clientতবে ced৪-বিট আইসেডটাই 6 এ এটি একই সংস্করণটি-সার্ভার হিসাবে চালিত হবে বলে মনে হয়। সম্ভবত অন্যরাও আছেন তবে আমি সর্বাধিক প্রতিক্রিয়াশীল হতে ডিফল্ট বিকল্পটি পাই।


আপনার স্মৃতি সেট করা

অবশেষে, জাভাটির স্মৃতি কীভাবে সেট করবেন (ঠিক কারণ)

java -Xmx1024m -Xms128m 'your other parameters here'

এটি জাভা প্রোগ্রামের জন্য অনুমোদিত মেমরিটিকে সর্বোচ্চ 1024 মেগাবাইটের মধ্যে সীমাবদ্ধ করে এবং এর প্রাথমিক মেমরির আকার 128 এমবিতে সেট করে। এটি ন্যূনতম সিস্টেমের প্রয়োজনীয়তাগুলি সংজ্ঞায়নের একটি দুর্দান্ত উপায়। জাভা 6 man পৃষ্ঠা জন্য javaকমান্ড এই বিকল্পগুলি এবং অন্যদের বর্ণনা করা হয়েছে।

এখানেই শেষ. কারও কাছে যদি উবুন্টুর জন্য অতিরিক্ত জাভা টুইট থাকে তবে তাদের মন্তব্যগুলিতে রেখে দিন এবং আমি এগুলি যুক্ত করব।


A জাভাআহোম / বিন এবং $ জাভাহোম / জেআর / বিনে প্রায় 47 টি এক্সিকিউটেবল ফাইল রয়েছে যা বিকল্প সিস্টেমে সমস্ত এন্ট্রি আপডেট করার জন্য স্ক্রিপ্টের জন্য চিৎকার করে। /Usr/lib/jvm/.java*.jinfo ফাইলগুলি দেখুন।
ব্যবহারকারী অজানা

আমি কীভাবে ডিফল্ট জেভিএম সেট করব? যা শুনেছি তা থেকে, -সেসভারের দীর্ঘ প্রারম্ভকালীন সময় রয়েছে, তবে কেন কোনও ব্যবহারকারী ইনস্টলেশনের জন্য ডিফল্টটিকে মানা হচ্ছে না?
ধর্মি

প্রকৃতপক্ষে ডিফল্টগুলি পরিবর্তন করার কোনও উপায় আছে, বা আপনি কি প্রতিবার স্পষ্টভাবে JVM এবং মেমরির সীমাটি নির্ধারণ করতে হবে (বা প্রতিটি স্বতন্ত্র প্রারম্ভিক স্ক্রিপ্টে)?
আইজ

0

ওপেনজেডকে ইনস্টলেশনের ভিতরে ডিফল্ট জেভিএম সেট করতে আপনাকে / usr / lib / jvm / java- সংস্করণ -openjdk- খাঁজ / জে / লিবি / আর্চ /jvm.cfg এর ভিতরে অবস্থিত jvm.cfg কনফিগারেশন ফাইলটি সম্পাদনা করতে হবে

ওবুন্টু ওপেনজেডিকে সংস্করণ অনুসারে / ইত্যাদি / ডিরেক্টরিতে jvm.cfg ফাইলটি প্রকাশ করে। জন্য / etc / জাভা-6-openjdk / jvm- খিলান .cfg অথবা / etc / জাভা-7-openjdk / jvm- খিলান .cfg

Jvm.cfg ফাইলের মধ্যে সর্বাধিক - jvmname KNOWN লাইনটি ডিফল্ট JVM নির্ধারণ করে।

কোনও কনফিগারেশন সরঞ্জাম উপলব্ধ নেই সুতরাং আপনাকে এই ফাইলগুলি ম্যানুয়ালি সনাক্ত করতে হবে এবং সম্পাদনা করতে হবে।

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