javac: कमांड नहीं मिली


111

मैंने अपने CentOS रिलीज़ 5.5 मशीन में कमांड का उपयोग करके जावा स्थापित किया है yum install java। लेकिन मैं javac का उपयोग करके एक वर्ग को संकलित करने में असमर्थ हूं।

क्या मुझे कोई अन्य पैकेज स्थापित करने की आवश्यकता है?

मैंने javacनिष्पादन योग्य का पता लगाने की कोशिश की है लेकिन मैं इसका पता लगाने में असमर्थ हूं।

/usr/bin/javaइस प्रकार से जुड़ा हुआ है:
/usr/bin/java-> /etc/alternatives/java
/etc/alternatives/java->>/usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

मैंने निम्न आउटपुट देखा है yum list installed |grep java:

java-1.6.0-openjdk.x86_64              1:1.6.0.0-1.16.b17.el5          installed
tzdata-java.x86_64                     2011b-1.el5                     installed

3
ऐसा लगता है कि आपके समाधान का उपयोग yumकरना हैinstall java-1.6.0-openjdk-devel.x86_64
विहंग

जवाबों:


125

आपने केवल जावा रनटाइम एनवायरनमेंट (JRE) स्थापित किया है, जिसमें शामिल नहीं हैjavac । इसके लिए javac, आपको OpenJDK डेवलपमेंट एनवायरनमेंट इंस्टॉल करना होगा । आप स्थापित कर सकते हैं java-develया java-1.6.0-openjdk-devel, जिसमें दोनों शामिल हैं javac

वैसे: आप यह पता लगा सकते हैं कि कौन सा पैकेज javacएक yumखोज के साथ प्रदान करता है , जैसे

su -c 'yum provides javac'

CentOS के अधिक हालिया रिलीज़ पर जैसे 6 कमांड में परिवर्तन होता है

su -c 'yum provides */javac'

एक और नोट: JDK को स्थापित करने के लिए उपयोग करना yumऔर openjdkकेवल एक संभावना है। बहुत से लोग सन / ओरेकल के "मूल" एसडीके को पसंद करते हैं। CentOS पर जावा एसडीके कैसे स्थापित करें देखें ? और विकल्पों के लिए लिंक।


हाँ मैं निश्चित हूँ। सिर्फ java-1.6.0-openjdk.x86_64 पैकेज जानकारी ("फ़ाइलें" अनुभाग पर स्क्रॉल करें) देखें और देखें कि javacउस पैकेज में कोई भी नहीं है। और फिर OpenJDK विकास पर्यावरण पैकेज को देखें
कुल्हाड़ी।

11
आपकी मदद के लिए धन्यवाद .. मैंने "yum install java-1.6.0-openjdk-devel.x86_64" का उपयोग किया है
बर्मन

6
फेडोरा 20 yum provides javacआउटपुट पर "कोई मिलान नहीं मिला"।
पर्सिड्स

1
लेकिन उन्होंने 'ओपनजेडक' स्थापित किया, है ना? JDK का अर्थ है जावा विकास किट
रेजर

177

इस आदेश के साथ मेरे लिए काम किया:

yum install java-devel

2
लेकिन यह अप्रचलित JDK 6 स्थापित करता है। यह JDK 8 क्यों नहीं स्थापित करता है? "यम इंस्टॉल जावा" जेआरई को स्थापित करता है 8.
जामशिड

आप जावा के संस्करण को खोजने के लिए "यम सूची" के आउटपुट को प्राप्त कर सकते हैं, फिर "यम इंस्टॉल <पैकेज" करें। मेरे लिए, यह "yum install java-1.7.0-openjdk-devel.x86_64" था
टॉम बैरन

12
Java8 उपयोग के लिएsudo yum install java-1.8.0-openjdk-devel
raghavsood33

1
इसका उत्तर होना चाहिए।
निक

अन्य जावा स्थापित करता है जब तक मैं इस पर ठोकर खाई javac 2 घंटे बर्बाद प्रदान
विवेक 16:50

28

निम्नलिखित sudo कमांड का उपयोग करें:

sudo yum install java-1.6.0-openjdk-devel

2

मुझे नहीं पता कि वास्तव में क्या yum install javaस्थापित होगा। लेकिन javac अस्तित्व के लिए जाँच करने के लिए:

> updatedb
> locate javac

अधिमानतः जड़ के रूप में। यदि यह वहां नहीं है तो आपने शायद केवल जावा रनटाइम (JRE) स्थापित किया है और जावा डेवलपमेंट किट (JDK) नहीं। आप ओरेकल साइट से इसे प्राप्त करना सबसे अच्छा समझते हैं: क्योंकि लिनक्स रिपोज नवीनतम संस्करणों के साथ थोड़ा पीछे हो सकता है और यह भी कि वे ओरेकल / सन एक के विपरीत केवल ओपन-जेडीके की आपूर्ति करते हैं, जिसे मैं पसंद करूंगा। ।


1

क्या javac एक निर्देशिका में निष्पादन योग्य है जो आपके PATH का हिस्सा है?

मैं Windows पथ के बराबर CentOS नहीं जानता, लेकिन अगर आप jd sdk निर्देशिका में सीडी और रन करते हैं ।/javac कुछ भी होता है?


मेरी समस्या यह है कि javac निष्पादन योग्य डिफ़ॉल्ट रूप से कहां मौजूद होगा
बिकाश बर्मन

क्या सेंटोस में कमांड नहीं है? जैसा कि @ रिचर्ड द्वारा सुझाया गया है
बेनक्र

मुझे खेद है, BenCr, मैंने एक टाइपो (javajc => javac) को ठीक किया, लेकिन सिस्टम केवल कम से कम 6 वर्णों को सही करने की अनुमति देता है, इसलिए मैंने कुछ और बदल दिया। यूनिक्स प्रकार सिस्टम पर (कुछ प्रकार के यूनिक्स है?) आपको वर्तमान निर्देशिका में कुछ शुरू करने के लिए निर्दिष्ट करना होगा। /। यदि मेरा संपादन स्वीकृत हो जाता है, तो ईर्ष्या के लिए स्वतंत्र महसूस करें।
उपयोगकर्ता अज्ञात 15

क्या आपने गलत उत्तर स्वीकार किया? यदि हां, तो कृपया सही को बदल दें ताकि पाठकों को भ्रमित न करें।
कुल्हाड़ी।

0

आपने जावा रनटाइम एनवायरनमेंट (JRE) स्थापित किया है, लेकिन इसमें javac शामिल नहीं है।

इसलिए टर्मिनल पर रूट उपयोगकर्ता तक पहुंच प्राप्त करें sudo -iऔर पासवर्ड दर्ज करें। टाइप करें yum install java-devel, इसलिए यह फेडोरा में जेवैक के पैकेज स्थापित करेगा।


0

javacअपने रूप में एक ही संस्करण स्थापित करेंJRE

yum install java-devel

0

मैं फेडोरा का उपयोग करता हूं (वर्तमान में 31)

JDK के स्थापित होने के बाद भी, मुझे अभी भी .Bashrc में JAVAC_HOME निर्दिष्ट करने की आवश्यकता है, खासकर जब से मेरे पास स्विच करने के लिए sudo विकल्प --configure जावा का उपयोग करके 4 जावा संस्करण हैं।

विकल्प में चयनित जावा के जावा स्थान को खोजने के लिए

readlink -f $ (जो जावा)

मेरे मामले में: /usr/java/jdk1.8.0_241-amd64/jre/bin/nava

इसलिए मैं निम्नलिखित .bashrc पर सेट करता हूं:

निर्यात JAVA_HOME = / usr / java / jdk1.8.0_241-amd64 / jre / bin / java

निर्यात JAVAC_HOME = / usr / java / jdk1.8.0_241-amd64 / bin / javac

निर्यात PATH = $ PATH: /usr/java/jdk1.8.0_241-amd64/jre/bin

निर्यात PATH = $ PATH: /usr/java/jdk1.8.0_241-amdr/j/

अब javac –version देता है: javac 1.8.0_241

यह उन लोगों के लिए उपयोगी है जो ओरेकल के संस्करण का उपयोग करना चाहते हैं। यदि आप जावा विकल्पों के साथ बदलाव करते हैं तो बस अपने .bashrc को फिर से बदलना याद रखें।


0

लिनक्स मिंट 19.3

मैंने जावा ओरेकल को मैन्युअल रूप से इस तरह स्थापित किया:

$ sudo ln -s /usr/lib/jvm/java-1.8.0_211/bin/javac /usr/bin/javac


-2

सुनिश्चित करें कि आप पहले JDK / JRE स्थापित करें।

इन कदमों का अनुसरण करें:

ओपन टर्मिनल टाइप करके अपने रूट डिक्शनरी में जाएं

cd /

आपको लाइब्रेरी फ़ोल्डर दिखाई देगा

अब इस रास्ते पर चलें Library/Java/JVM/bin

एक बार जब आप फाइल में आते binहैं, तो आप देख सकते हैंjavac

अब आपको इस फ़ोल्डर का पथ प्राप्त करने की आवश्यकता है, बस इस कमांड को लिखें

pwd

अपने लिए रास्ता निकालें javac


1
ऑपरेटिंग सिस्टम ओपी नाम CentOS है।
न्यूब
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.