আমি ভেবেছিলাম _JAVA_OPTIONS
এবং এর মধ্যে একটি তুলনা করা দুর্দান্ত হবেJAVA_TOOL_OPTIONS
। আমি একটির জন্য কিছুটা অনুসন্ধান করেছিলাম, তবে আমি কিছুই খুঁজে পাচ্ছি না, তাই আমি আশা করি আমরা স্ট্যাকওভারফ্লোতে এখানে জ্ঞানটি খুঁজে পেতে পারি।
JAVA_OPTS
সম্পূর্ণতার জন্য অন্তর্ভুক্ত করা হয়। এটি জেভিএমের অংশ নয়, তবে বন্যের মধ্যে এটি নিয়ে প্রচুর প্রশ্ন রয়েছে।
আমি যা জানি:
এখনও অবধি আমি এটি জানতে পেরেছি:
JAVA_OPTS
জেডিকে দ্বারা ব্যবহৃত হয় না, তবে অন্যান্য অ্যাপ্লিকেশনগুলির একটি গুচ্ছ দ্বারা ( এই পোস্টটি দেখুন )।JAVA_TOOL_OPTIONS
এবং_JAVA_OPTIONS
হ'ল কমান্ড লাইন প্যারামিটারের পরিবর্তে পরিবেশগত পরিবর্তনশীল হিসাবে JVM টি আর্গুমেন্ট নির্দিষ্ট করার উপায়।- কমপক্ষে তাদের নেওয়া হয়
java
এবংjavac
- তাদের এই নজির রয়েছে:
_JAVA_OPTIONS
(অন্যদের ওভাররাইট করে)- কমান্ড লাইন পরামিতি
JAVA_TOOL_OPTIONS
(অন্যদের দ্বারা ওভাররাইট করা হয়)
- কমপক্ষে তাদের নেওয়া হয়
আমি জানতে চাই কি
- তুলনা করে কোনও অফিসিয়াল ডকুমেন্টেশন রয়েছে
JAVA_TOOL_OPTIONS
এবং_JAVA_OPTIONS
- এর মধ্যে
JAVA_TOOL_OPTIONS
এবং_JAVA_OPTIONS
(অগ্রাধিকার ব্যতীত) অন্য কোনও পার্থক্য রয়েছে কি ? - কোন এক্সিকিউটেবলগুলি বাছাই করে
JAVA_TOOL_OPTIONS
এবং_JAVA_OPTIONS
(পাশাপাশিjava
এবংjavac
) - কি অন্তর্ভুক্ত করা যেতে পারে কোন সীমাবদ্ধতা
JAVA_TOOL_OPTIONS
এবং_JAVA_OPTIONS
অফিসিয়াল ডকুমেন্টেশন
আমি সম্পর্কে কোন ডকুমেন্টেশন সন্ধান করতে সক্ষম হয় নি _JAVA_OPTIONS
। এর জন্য ডকুমেন্টেশনগুলিJAVA_TOOL_OPTIONS
পার্থক্যের বিষয়ে খুব বেশি আলোকপাত করে না:
যেহেতু কমান্ড-লাইনটি সর্বদা অ্যাক্সেস বা সংশোধন করা যায় না, উদাহরণস্বরূপ এম্বেড করা ভিএমগুলি বা কেবল স্ক্রিপ্টগুলির মধ্যে গভীরভাবে চালু করা ভিএমগুলিতে, একটি জাভাআরএফএলএল_অপশন ভেরিয়েবল সরবরাহ করা হয় যাতে এজন্য এজেন্টগুলি চালু করা যেতে পারে।
...
উদাহরণ স্ক্রিপ্ট
এই কোডটি আমি এটি বের করতে ব্যবহার করেছি। কনসোল আউটপুট মন্তব্য হিসাবে অন্তর্ভুক্ত করা হয়েছে:
export JAVA_OPTS=foobar
export JAVA_TOOL_OPTIONS=
export _JAVA_OPTIONS="-Xmx512m -Xms64m"
java -version
# Picked up JAVA_TOOL_OPTIONS:
# Picked up _JAVA_OPTIONS: -Xmx512m -Xms64m
# java version "1.7.0_40"
OpenJDK Runtime Environment (IcedTea 2.4.1) (suse-3.41.1-x86_64)
OpenJDK 64-Bit Server VM (build 24.0-b50, mixed mode)
javac -version
# Picked up JAVA_TOOL_OPTIONS:
# Picked up _JAVA_OPTIONS: -Xmx512m -Xms64m
# javac 1.7.0_40
export JAVA_TOOL_OPTIONS="-Xmx1 -Xms1"
export _JAVA_OPTIONS="-Xmx512m -Xms64m"
javac -version
# Picked up JAVA_TOOL_OPTIONS: -Xmx1 -Xms1
# Picked up _JAVA_OPTIONS: -Xmx512m -Xms64m
# javac 1.7.0_40
export JAVA_TOOL_OPTIONS="-Xmx512m -Xms64m"
export _JAVA_OPTIONS="-Xmx1 -Xms1"
javac -version
# Picked up JAVA_TOOL_OPTIONS: -Xmx512m -Xms64m
# Picked up _JAVA_OPTIONS: -Xmx1 -Xms1
# Error occurred during initialization of VM
# Too small initial heap
export JAVA_TOOL_OPTIONS="-Xmx1 -Xms1"
export _JAVA_OPTIONS=
java -Xmx512m -Xms64m -version
# Picked up JAVA_TOOL_OPTIONS: -Xmx1 -Xms1
# Picked up _JAVA_OPTIONS:
# java version "1.7.0_40"
# OpenJDK Runtime Environment (IcedTea 2.4.1) (suse-3.41.1-x86_64)
# OpenJDK 64-Bit Server VM (build 24.0-b50, mixed mode)
export JAVA_TOOL_OPTIONS=
export _JAVA_OPTIONS="-Xmx1 -Xms1"
java -Xmx512m -Xms64m -version
# Picked up JAVA_TOOL_OPTIONS:
# Picked up _JAVA_OPTIONS: -Xmx1 -Xms1
# Error occurred during initialization of VM
# Too small initial heap
JDK_JAVA_OPTIONS
পছন্দের পরিবর্তে দেখুন stackoverflow.com/q/52986487/537554