আমার উইন্ডোজ মেশিনে জেডিকে ইনস্টল করা আছে কীভাবে আমি খুঁজে পাব?


303

আমার যন্ত্রটি জেডিকে কোথায় রয়েছে তা আমার জানা দরকার।

চলমান উপর Java -versionমধ্যে cmd কমান্ড , এটা '1.6.xx' হিসেবে সংস্করণ দেখায়। আমার মেশিনে এই echo %JAVA_HOME%এসডিকেটির অবস্থানটি সন্ধান করার জন্য আমি চেষ্টা করেছিলাম তবে এটি কেবল 'জাভাহোম' দেখায় (আমার পরিবেশের ভেরিয়েবলগুলিতে কোনও 'জাভাপাথ' ভার সেট নেই)।


1
দুর্ভাগ্যক্রমে, আমি মনে করি নীচের উত্তরগুলির কয়েকটি কার্যকর নাও হতে পারে কারণ সম্ভবত জাভার আরও সাম্প্রতিক সংস্করণগুলির সাথে কিছু পরিবর্তন হয়েছিল। আজ আমি জাভা এসডিকে 7.60 সংস্করণটি ডাউনলোড করেছি ed কিছু অনুসন্ধানের পরে, এটি সি: \ প্রোগ্রাম ফাইল (x86) \ জাভা \ jdk1.7.0_60 এ পাওয়া গেছে। ইতিমধ্যে 6 টি জেআরই ইনস্টল করা আছে। এটি সি: \ প্রোগ্রাম ফাইল \ জাভাতে ছিল এবং এটি% PATH% এ ছিল নতুন ইনস্টল নয়।
likejudo

1
সর্বোত্তম উত্তরটি নীচে রয়েছে, পাওয়ারশেলের জন্য মজকিনিটরের এক-লাইনার: $ পি = 'এইচকেএলএম: OF সফটওয়্যার \ জাভাসফট \ জাভা ডেভেলপমেন্ট কিট'; $ v = (জিপি $ পি) urrentক্রাণ্ট ভার্সন; (জিপি $ পি / $ ভি)। জাভাহোম
পি 2

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

উত্তর:


329

আপনি যদি লিনাক্স / ইউনিক্স / ম্যাক ওএস এক্স ব্যবহার করেন:

এটা চেষ্টা কর:

$ which java

সঠিক অবস্থান আউটপুট করা উচিত।

এর পরে, আপনি JAVA_HOMEপরিবেশের পরিবর্তনশীল নিজেকে সেট করতে পারেন ।

আমার কম্পিউটারে (ম্যাক ওএস এক্স - স্নো লেপার্ড):

$ which java
/usr/bin/java
$ ls -l /usr/bin/java
lrwxr-xr-x  1 root  wheel  74 Nov  7 07:59 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

আপনি যদি উইন্ডোজ ব্যবহার করেন:

c:\> for %i in (java.exe) do @echo.   %~$PATH:i

আসলে, ফর্ম% VAR_NAME% উইন্ডোজ
sblundy

1
উত্তরটি লিনাক্স / ইউনিক্স / ম্যাক ওএস এক্স এবং উইন্ডোজ উদাহরণ সহ আপডেট করেছে ।
পাবলো সান্তা ক্রুজ

125
where javaউইন্ডোজে কাজ করে (কমপক্ষে উইন্ডোজ of হিসাবে) তবে আপনি যদি সত্যিই একটি জেডিকে এবং একটি জেআরই না চান তবে আপনাকে 'বিন / জাভ্যাক /
জোন স্ট্রেয়ার

জাভা.এক্সী পথে থাকলে জাভা পুরো পথ দেয় না, অন্যদিকে পাবলো এর জন্য ... সমাধানটি করাই শ্রেয়।
রিচার্ড জনসন

1
ls -l $(which java) | awk '{print $11}'
ম্যাকস

111

উইন্ডোজ> স্টার্ট> সেমিডি>

C:> for %i in (javac.exe) do @echo.   %~$PATH:i

আপনার যদি জেডিকে ইনস্টল থাকে, তবে পথটি প্রদর্শিত হবে,
উদাহরণস্বরূপ:C:\Program Files\Java\jdk1.6.0_30\bin\javac.exe


16
উইন্ডোজ (7+) => যেখানে javac.exe
এইচবি 0

6
উইন্ডোতে এটি রয়েছে, যেখানে জাভা
পবিত্র দশ

10
where javaএক্সিকিউটেবল PATH এ কেবল তখনই কাজ করে। যদি যাই হোক না কেন, জাভাক পথে নেই, তবে এটি কোনও ফল দেয় না, তবে এর অর্থ এই নয় যে জেডিকে ইনস্টল করা নেই is সুতরাং সাধারণ ক্ষেত্রে @Grokster সমাধান দ্বারা প্রস্তাবিত ফাইল অনুসন্ধান সমাধান কোনও ফলাফলের নিশ্চয়তা দেবে (চিন্তাভাবনাটি সম্পূর্ণ হতে সময় নিতে পারে)।
নিকিতা জি।

'ফর-লুপ' স্টাফ কাজ করেনি, তবে আমি এটি এখানে পেয়েছি: সি: \ প্রোগ্রাম ফাইল (x86) \ জাভা \
jdk1.6.0_24

লক্ষ্য করুন যে আপনি যদি অ্যান্ড্রয়েড স্টুডিওগুলি ব্যবহার করতে এই (কোড labs.developers.google.com/codelabs/… ) টিউটোরিয়ালটি অনুসরণ করে থাকেন তবে আসল পথটি উপরের কমান্ড দ্বারা ফিরে আসবে না। যেখানে পরিবর্তে "JDK" আপনার ভালো কিছু হবে "JDK-10.0.1" JDK সংস্করণের জন্য 10. |: সম্ভবত, আপনি "<JDK> \\ প্রোগ্রাম ফাইল \ জাভা সি" ভালো কিছু হবে
Euler_Salter

96

উইন্ডোজ কমান্ড প্রম্পটে

where javac


8
উইন্ডোতে এটি রয়েছে, যেখানে জাভা
পবিত্র দশ

7
দ্রষ্টব্য, জাভ্যাক PATH এ থাকলে এটি কেবল কাজ করে। যদি এটি না হয় তবে এই কমান্ডটি বলবে যে এটি পাওয়া যায় নি, তবে জেডিকে এখনও ইনস্টল করা যেতে পারে। JDK ইনস্টলেশনের পরে যদি PATH আপডেট না করা হয় তবে অন্যান্য পদ্ধতিগুলি ব্যবহার করুন।
নিকিতা জি।

1
অন্য কোন পদ্ধতি? আপনি % i (javac.exe) do @echo ব্যবহার করে উল্লেখ করেছেন % ~ AT পথ: i , কিন্তু আপনি যেমন লিখেছেন, আপনি যদি এটি PATH তে সেট না করেন তবে এটি কাজ করবে না।
নিমরোড

30

উইন্ডোতে ডিফল্টটি হ'ল: C:\Program Files\Java\jdk1.6.0_14(যেখানে সংস্করণটি হ'ল সংখ্যাগুলি পৃথক হতে পারে)।


আপনি আলাদা সংস্করণ নম্বরটি কীভাবে পুনরুদ্ধার করবেন?
এলজেডএইচ

আপনার এক্সপ্লোরার থেকে কেবলমাত্র বাড়ানো স্থানটিতে নেভিগেট করুন এবং আপনি ইনস্টল করা jdk ফোল্ডার সংস্করণটি দেখতে পাবেন।
আহ্নবিজক্যাড

26

জাভা ইনস্টলার অনেকগুলি ফাইল% WinDir% \ System32 ফোল্ডারে (java.exe, javaws.exe এবং কিছু অন্যান্য) রাখে। আপনি যখন কমান্ড লাইনে java.exe টাইপ করেন বা পুরো পাথ ছাড়াই প্রক্রিয়া তৈরি করেন, উইন্ডোজ এগুলি% PATH% ফোল্ডারে হারিয়ে না থাকলে এগুলি সর্বশেষ অবলম্বন হিসাবে চালায়।

আপনি নিবন্ধে ইনস্টল করা জাভার সমস্ত সংস্করণ দেখতে পারেন lookup এইচকেএলএম \ সফটওয়্যার \ জাভাসফট \ জাভা রানটাইম এনভায়রনমেন্ট এবং এইচকেএলএম \ সফটওয়্যার \ ওয়াও 6432 নোড \ জাভাসফট \ জাভা রানটাইম এনভায়রনমেন্ট 64৪-বিট জাভাতে bit৪ বিট জাভাতে দেখুন।

এইভাবে জাভা নিজেই ইনস্টল করা বিভিন্ন সংস্করণ আবিষ্কার করে। এবং এ কারণেই 32-বিট এবং 64-বিট সংস্করণ উভয়ই সহাবস্থান করতে পারে এবং হস্তক্ষেপ না করে সূক্ষ্মভাবে কাজ করে।


23

উইন্ডোজ প্ল্যাটফর্মগুলিতে সরল এবং সাধারণ:

যেখানে জাভা


8
এটি জাভা অবস্থানের ভুল সি এর ফল: সি: I উইন্ডো। সিস্টেম 32 \ জাভা.এক্সে। তবে আসল জেডি কে সি: \ জাভা \ jdk1.7.0 at এ ইনস্টল করা আছে (যেমন জাভাআহোম সেট করা আছে)
হিমাংশু ভরদ্বাজ

17

নীচের ব্যাচের স্ক্রিপ্টটি বিদ্যমান ডিফল্ট জেআরই প্রিন্ট করবে। জাভা রানটাইম এনভায়রনমেন্টটি জাভা ডেভলপমেন্ট কিটের সাথে প্রতিস্থাপন করে ইনস্টল করা জেডিকে সংস্করণটি সহজেই সংশোধন করা যেতে পারে ।

@echo off

setlocal

::- Get the Java Version
set KEY="HKLM\SOFTWARE\JavaSoft\Java Runtime Environment"
set VALUE=CurrentVersion
reg query %KEY% /v %VALUE% 2>nul || (
    echo JRE not installed 
    exit /b 1
)
set JRE_VERSION=
for /f "tokens=2,*" %%a in ('reg query %KEY% /v %VALUE% ^| findstr %VALUE%') do (
    set JRE_VERSION=%%b
)

echo JRE VERSION: %JRE_VERSION%

::- Get the JavaHome
set KEY="HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\%JRE_VERSION%"
set VALUE=JavaHome
reg query %KEY% /v %VALUE% 2>nul || (
    echo JavaHome not installed
    exit /b 1
)

set JAVAHOME=
for /f "tokens=2,*" %%a in ('reg query %KEY% /v %VALUE% ^| findstr %VALUE%') do (
    set JAVAHOME=%%b
)

echo JavaHome: %JAVAHOME%

endlocal

16

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

এটি উইন্ডোজ 7 এবং সম্ভবত উইন্ডোজের অন্যান্য সাম্প্রতিক সংস্করণগুলিতে কাজ করা উচিত।

এখানে চিত্র বর্ণনা লিখুন


আমি উইন্ডোজ 10 এ আছি এবং কন্ট্রোল প্যানেলে কোনও জাভা নেই
ল্যাং প্রতিক্রিয়া দেব

1
আপনি কি নিশ্চিত যে জাভা ইনস্টল করা আছে এবং এটি উইন্ডোজ ইনস্টলেশন প্যাকেজটি ব্যবহার করে ইনস্টল করা হয়েছিল?
স্মার্টটেক্সার্ট

জাভা কোথায় ইনস্টল করা হতে পারে তা জানতে আপনি আপনার অ্যাকাউন্ট এবং সিস্টেম এনভায়রনমেন্ট ভেরিয়েবলগুলি দেখার চেষ্টা করতে পারেন, javacpl.exe সন্ধান করুন
স্মার্টটেক্সার্ট

12

উইন্ডোজ কমান্ড প্রম্পটে, কেবল টাইপ করুন:

set java_home

অথবা, আপনি যদি কমান্ড পরিবেশটি পছন্দ না করেন তবে আপনি এটি থেকে এটি পরীক্ষা করতে পারেন:

মেনু> কম্পিউটার> সিস্টেম বৈশিষ্ট্য> উন্নত সিস্টেমের বৈশিষ্ট্য ties তারপরে অ্যাডভান্সড ট্যাব খুলুন> এনভায়রনমেন্ট ভেরিয়েবল এবং সিস্টেম ভেরিয়েবল JAVA_Home সন্ধান করার চেষ্টা করুন।

এখানে চিত্র বর্ণনা লিখুন


এটি আমাকে jdk ফোল্ডার দেয়। যখন আমি স্কেল ওয়ার্কশিটে সিস্টেম.জেটপ্রোপার্টি ("java.home") চালাই, এটি আমাকে জেয়ার সাবফোল্ডার দেয়। জাভা হোম সম্পর্কে স্পষ্টতই কিছুটা অস্পষ্টতা রয়েছে।
অয়ন ফ্রিম্যান

11

উইন্ডোজ অধীনে, আপনি ব্যবহার করতে পারেন

C:>dir /b /s java.exe

আপনার সিটিতে প্রতিটি "java.exe" এর পুরো পথটি মুদ্রণ করতে: ড্রাইভগুলি আপনার প্যাথ পরিবেশ পরিবর্তনশীল কিনা তা নির্বিশেষে।


10

উইন্ডোজে আরও ... চলক জাভা.হোম সর্বদা চালিত বাইনারি হিসাবে একই অবস্থান হয় না।

ডেনিস দ্য Menace বলেন, ইনস্টলার রাখে জাভা ফাইল প্রোগ্রাম ফাইল , কিন্তু java.exe মধ্যে সিস্টেম 32 । জাভা সম্পর্কিত কোনও কিছুর সাথে জাভা-রূপান্তর কাজ করতে পারে না। যাইহোক, যখন পিটারএমএমএম এর প্রোগ্রামটি চালিত হয় তখন এটি প্রোগ্রাম ফাইলগুলির জাভাহোম হিসাবে মূল্য হিসাবে রিপোর্ট করে , এটি ভুল নয় (জাভা সেখানে ইনস্টল করা আছে) তবে প্রকৃত বাইনারিটি চালু রয়েছে সিস্টেম 32

জাভা.এক্সইএইস বাইনারিটির অবস্থান অনুসন্ধান করার একটি উপায় , প্রোগ্রামটিকে আরও দীর্ঘকাল ধরে চালিয়ে যাওয়ার জন্য পিটারএমএমএম কোডটিতে নিম্নলিখিত লাইনটি যুক্ত করুন:

try{Thread.sleep(60000);}catch(Exception e) {}

এটি সঙ্কলন করুন এবং চালান, তারপরে জাভা.এক্সই চিত্রের অবস্থানটি অনুসন্ধান করুন । যেমন উইন্ডোজ in- এ টাস্ক ম্যানেজারটি খুলুন, java.exe এন্ট্রিটি সন্ধান করুন, ডান ক্লিক করুন এবং 'ওপেন ফাইলের অবস্থান' নির্বাচন করুন, এটি জাভা বাইনারিটির সঠিক অবস্থানটি খুলবে। এই ক্ষেত্রে এটি সিস্টেম 32 হবে


9

কমান্ডলাইন থেকে এই প্রোগ্রামটি চালান:

// File: Main.java
public class Main {

    public static void main(String[] args) {
       System.out.println(System.getProperty("java.home"));
    }

}


$ javac Main.java
$ java Main

4
তাকে কি এই প্রথম সংকলন করতে হবে না?
ইরভিন

2
এটি কোনও জেআরই খুঁজে পেয়েছে যদি এটি ইনস্টল করা হয় এবং প্রথমে পথে।
জন স্ট্রেয়ার

9

পাওয়ারশেল ওয়ান লাইনার:

$p='HKLM:\SOFTWARE\JavaSoft\Java Development Kit'; $v=(gp $p).CurrentVersion; (gp $p/$v).JavaHome

1
$p='HKLM:\SOFTWARE\JavaSoft\JDK'; $v=(gp $p).CurrentVersion; (gp $p/$v).JavaHome
জেডিকে

6

আপনি কি আপনার% PATH% ভেরিয়েবলটি দেখার চেষ্টা করেছেন? উইন্ডোজ এটি ব্যবহার করে কোনও নির্বাহযোগ্যকে খুঁজে পেতে।


হাঁ। Echo %PATH%. খনিটি c:\Program Files\Javaউইন্ডোজ 7-এ উপস্থিত রয়েছে বলে মনে হচ্ছে
মার্ক ইরভিন

5

শুধু চালানো setআপনার কমান্ড লাইনে কমান্ডটি । তারপরে আপনি সেট করা সমস্ত পরিবেশের ভেরিয়েবলগুলি দেখতে পাবেন।

অথবা ইউনিক্সে থাকলে আপনি এটি সহজ করতে পারেন:

$ set | grep "JAVA_HOME" 

ধন্যবাদ রফলকপ্ট্র্ট, 'সেট' সম্পর্কে শিখতে সত্যই এটি কার্যকর হয়েছিল। আমার সিস্টেমে এটি একই ভেরিয়েবলের জন্য দুটি এন্ট্রি দেখায়, আমি কীভাবে ভুলটিকে মুছতে পারি।
আশিন

3

এটি ওএস নির্দিষ্ট। ইউনিক্সে:

which java

এক্সিকিউটেবলের পথ প্রদর্শন করবে। আমি একটি উইন্ডোজ সমতুল্য সম্পর্কে জানি না, তবে সেখানে সাধারণত আপনার binসিস্টেমে জেডিকে ইনস্টলেশনের ফোল্ডার থাকে PATH:

echo %PATH%

আমিও এই উত্তরটি দিতে যাচ্ছিলাম, তবে তিনি স্পষ্টতই একটি উইন্ডোজ উত্তর খুঁজছেন।
ডন ব্রানসন

@ ডনব্রান্সন তিনি পোস্টটি জমা দেওয়ার পরে উইন্ডোজ অন্তর্ভুক্ত করার জন্য পাঠ্যটি পরিবর্তন করেছিলেন।
24:57

2

লিনাক্সের জন্য এই উত্তরগুলির কোনওটিই সঠিক নয় যদি আপনি এমন বাড়িটির সন্ধান করেন যা সাবদারদের অন্তর্ভুক্ত করে যেমন: বিন, ডক্স, অন্তর্ভুক্ত, জে, লিব ইত্যাদি includes

ওপেনজেডকি 1.8.0 এর জন্য উবুন্টুতে, এটি এতে রয়েছে: /usr/lib/jvm/java-1.8.0-openjdk-amd64

এবং আপনি এটি ব্যবহার করতে পছন্দ করতে পারেন JAVA_HOMEকারণ আপনি জেএনআই উত্স ফাইলগুলি তৈরি করলে আপনি শিরোনামগুলি সন্ধান করতে পারবেন। যদিও এটি সত্য which javaবাইনারি পথ সরবরাহ করবে, এটি সত্য জেডিকে হোম নয়।


1

ম্যাকোজে, চালান:

cd /tmp && echo 'public class Main {public static void main(String[] args) {System.out.println(System.getProperty("java.home"));}}' > Main.java && javac Main.java && java Main

আমার মেশিনে, এই মুদ্রণ:

/Library/Java/JavaVirtualMachines/jdk-9.0.4.jdk/Contents/Home

নোট করুন যে দৌড়ানো which javaজেডিকে অবস্থানটি প্রদর্শন করে না, কারণ javaকমান্ডটি পরিবর্তে এর অংশ JavaVM.framework, যা আসল জেডিকে আবৃত করে:

$ which java
/usr/bin/java
/private/tmp
$ ls -l /usr/bin/java
lrwxr-xr-x  1 root  wheel  74 14 Nov 17:37 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java


0
#!/bin/bash

if [[ $(which ${JAVA_HOME}/bin/java) ]]; then
    exe="${JAVA_HOME}/bin/java"
elif [[ $(which java) ]]; then
    exe="java"
else 
    echo "Java environment is not detected."
    exit 1
fi

${exe} -version

উইন্ডোজ জন্য:

@echo off
if "%JAVA_HOME%" == "" goto nojavahome

echo Using JAVA_HOME            :   %JAVA_HOME%

"%JAVA_HOME%/bin/java.exe" -version
goto exit

:nojavahome
echo The JAVA_HOME environment variable is not defined correctly
echo This environment variable is needed to run this program.
goto exit

:exit

এই লিঙ্কটি বাশ থেকে কীভাবে জাভা কার্যকর করতে হবে তা ব্যাখ্যা করতে সহায়তা করতে পারে: http://srcode.org/2014/05/07/detect-java-executable/


1
যদিও এই লিঙ্কটি প্রশ্নের উত্তর দিতে পারে, উত্তরের প্রয়োজনীয় অংশগুলি এখানে অন্তর্ভুক্ত করা এবং রেফারেন্সের জন্য লিঙ্কটি সরবরাহ করা ভাল। লিঙ্কযুক্ত পৃষ্ঠাগুলি পরিবর্তিত হলে লিঙ্ক-শুধুমাত্র উত্তরগুলি অবৈধ হতে পারে।
শাইফুল ইসলাম

1
ধন্যবাদ @ শাইফুলআইসলাম, আপনার বক্তব্য সঠিক। আমি লিঙ্ক থেকে কোড যুক্ত।
কিয়ান চেন

0

আমি উন্নতি করেছি 64৪ -বিট এবং ৩২-বিট রেজিস্ট্রিগুলিতে রেজিস্ট্রি কীটি পরীক্ষা করে উপরে মুন্সিংহের জবাব করেছি :

::- Test for the registry location  
SET VALUE=CurrentVersion
SET KEY_1="HKLM\SOFTWARE\JavaSoft\Java Development Kit"
SET KEY_2=HKLM\SOFTWARE\JavaSoft\JDK
SET REG_1=reg.exe
SET REG_2="C:\Windows\sysnative\reg.exe"
SET REG_3="C:\Windows\syswow64\reg.exe"

SET KEY=%KEY_1%
SET REG=%REG_1%
%REG% QUERY %KEY% /v %VALUE% 2>nul
IF %ERRORLEVEL% EQU 0 GOTO _set_value

SET KEY=%KEY_2%
SET REG=%REG_1%
%REG% QUERY %KEY% /v %VALUE% 2>nul
IF %ERRORLEVEL% EQU 0 GOTO _set_value

::- %REG_2% is for 64-bit installations, using "C:\Windows\sysnative"
SET KEY=%KEY_1%
SET REG=%REG_2%
%REG% QUERY %KEY% /v %VALUE% 2>nul
IF %ERRORLEVEL% EQU 0 GOTO _set_value

SET KEY=%KEY_2%
SET REG=%REG_2%
%REG% QUERY %KEY% /v %VALUE% 2>nul
IF %ERRORLEVEL% EQU 0 GOTO _set_value

::- %REG_3% is for 32-bit installations on a 64-bit system, using "C:\Windows\syswow64"
SET KEY=%KEY_1%
SET REG=%REG_3%
%REG% QUERY %KEY% /v %VALUE% 2>nul
IF %ERRORLEVEL% EQU 0 GOTO _set_value

SET KEY=%KEY_2%
SET REG=%REG_3%
%REG% QUERY %KEY% /v %VALUE% 2>nul
IF %ERRORLEVEL% EQU 0 GOTO _set_value

:_set_value
FOR /F "tokens=2,*" %%a IN ('%REG% QUERY %KEY% /v %VALUE%') DO (
    SET JDK_VERSION=%%b
)
SET KEY=%KEY%\%JDK_VERSION%
SET VALUE=JavaHome
FOR /F "tokens=2,*" %%a IN ('%REG% QUERY %KEY% /v %VALUE%') DO (
    SET JAVAHOME=%%b
)
ECHO "%JAVAHOME%"
::- SETX JAVA_HOME "%JAVAHOME%"

64-বিট রেজিস্ট্রি অ্যাক্সেস জন্য রেফারেন্স


0

32/64 বিট উইন্ডোজের স্ক্রিপ্ট।

@echo off

setlocal enabledelayedexpansion

::- Get the Java Version
set KEY="HKLM\SOFTWARE\JavaSoft\Java Runtime Environment"
set KEY64="HKLM\SOFTWARE\WOW6432Node\JavaSoft\Java Runtime Environment"
set VALUE=CurrentVersion
reg query %KEY% /v %VALUE% 2>nul || (
    set KEY=!KEY64!
    reg query !KEY! /v %VALUE% 2>nul || (
    echo JRE not installed 
    exit /b 1
)
)

set JRE_VERSION=
for /f "tokens=2,*" %%a in ('reg query %KEY% /v %VALUE% ^| findstr %VALUE%') do (
    set JRE_VERSION=%%b
)

echo JRE VERSION: %JRE_VERSION%

::- Get the JavaHome
set KEY="HKLM\SOFTWARE\JavaSoft\Java Runtime Environment\%JRE_VERSION%"
set KEY64="HKLM\SOFTWARE\WOW6432Node\JavaSoft\Java Runtime Environment\%JRE_VERSION%"
set VALUE=JavaHome
reg query %KEY% /v %VALUE% 2>nul || (
    set KEY=!KEY64!
    reg query !KEY! /v %VALUE% 2>nul || (
    echo JavaHome not installed
    exit /b 1
)
)

set JAVAHOME=
for /f "tokens=2,*" %%a in ('reg query %KEY% /v %VALUE% ^| findstr %VALUE%') do (
    set JAVAHOME=%%b
)

echo JavaHome: %JAVAHOME%

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