javac: perintah tidak ditemukan


111

Saya telah menginstal java di mesin CentOS rilis 5.5 saya menggunakan perintah yum install java. Tetapi saya tidak dapat mengkompilasi kelas menggunakan javac.

Apakah saya perlu menginstal paket lain?

Saya telah mencoba menemukan javacfile yang dapat dieksekusi tetapi saya tidak dapat menemukannya.

/usr/bin/javaditautkan sebagai berikut:
/usr/bin/java-> /etc/alternatives/java
/etc/alternatives/java->/usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

Saya telah melihat keluaran berikut oleh 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
Sepertinya solusi Anda adalah dengan menggunakan yumuntukinstall java-1.6.0-openjdk-devel.x86_64
Vihung

Jawaban:


125

Anda menginstal Java Runtime Environment (JRE) saja, yang tidak berisijavac file . Sebab javac, Anda harus menginstal OpenJDK Development Environment . Anda dapat menginstal java-develatau java-1.6.0-openjdk-devel, yang keduanya termasuk javac.

By the way: Anda dapat mengetahui paket menyediakan javacdengan yumpencarian , misalnya

su -c 'yum provides javac'

pada rilis terbaru CentOS misalnya 6 perintah berubah menjadi

su -c 'yum provides */javac'

Catatan lain: menggunakan yumdan openjdkhanya satu kemungkinan untuk menginstal JDK. Banyak orang lebih suka SDK "asli" Sun / Oracle. Lihat Bagaimana cara menginstal Java SDK di CentOS? dan tautan untuk alternatif.


ya saya yakin. lihat saja informasi paket java-1.6.0-openjdk.x86_64 (gulir ke bagian "File") dan lihat bahwa tidak ada javacpaket tersebut. dan kemudian lihat paket OpenJDK Development Environment .
kapak.

11
Terima kasih atas bantuan Anda .. Saya telah menggunakan "yum install java-1.6.0-openjdk-devel.x86_64"
Bikash Barman

6
Pada Fedora 20 yum provides javacoutput "Tidak ada yang cocok".
Perseids

1
tapi dia memasang 'openjdk', kan? JDK berarti java development kit
pisau cukur

177

Bekerja untuk saya dengan perintah ini:

yum install java-devel

2
Tapi itu menginstal JDK yang sudah usang 6. Mengapa tidak menginstal JDK 8? "yum install java" tidak menginstal JRE 8.
jamshid

Anda dapat menggrep output dari "yum list" untuk mencari versi java yang Anda inginkan, lalu melakukan "yum install <package>". Bagi saya, itu adalah "yum install java-1.7.0-openjdk-devel.x86_64"
Tom Barron

12
Untuk penggunaan java8sudo yum install java-1.8.0-openjdk-devel
raghavsood33

1
inilah jawabannya.
nikk


28

Gunakan perintah sudo berikut:

sudo yum install java-1.6.0-openjdk-devel

2

Saya tidak tahu persis apa yang yum install javaakan diinstal. Namun untuk mengecek keberadaan javac lakukan:

> updatedb
> locate javac

sebaiknya sebagai root. Jika tidak ada, Anda mungkin hanya menginstal Java runtime (JRE) dan bukan Java Development Kit (JDK). Anda sebaiknya mendapatkan ini dari situs Oracle : karena repo Linux mungkin sedikit tertinggal dengan versi terbaru dan juga mereka tampaknya hanya menyediakan open-jdk sebagai lawan dari Oracle / Sun, yang saya lebih suka diberi pilihan .


1

Apakah javac dapat dieksekusi dalam direktori yang merupakan bagian dari PATH Anda?

Saya tidak tahu CentOS yang setara dengan jalur Windows tetapi jika Anda cd ke direktori java sdk dan menjalankan ./javac apakah terjadi sesuatu?


Masalah saya adalah di mana javac yang dapat dieksekusi akan hadir secara default
Bikash Barman

bukankah centos memiliki perintah cari? seperti yang disarankan oleh @Richard
BenCr

Maaf, BenCr, saya mengoreksi kesalahan ketik (javajc => javac) tetapi sistem hanya memungkinkan untuk mengoreksi setidaknya 6 karakter, jadi saya mengubah sesuatu yang lain. Pada sistem tipe Unix (apakah CentOS semacam Unix?) Anda harus menentukan ./ untuk memulai sesuatu di direktori saat ini. Jangan ragu untuk mengedit ulang, jika hasil edit saya disetujui.
pengguna tidak diketahui

apakah kamu menerima jawaban yang salah? jika iya, silahkan ganti ke kanan agar tidak membingungkan pembaca.
kapak.

0

Anda telah menginstal Java Runtime Environment (JRE) tetapi tidak berisi javac.

Jadi di terminal dapatkan akses ke pengguna root sudo -idan masukkan kata sandi. Ketik yum install java-devel, maka itu akan menginstal paket javac di fedora.


0

Instal versi yang sama javacdengan AndaJRE

yum install java-devel

0

Saya menggunakan Fedora (saat ini 31)

Bahkan dengan JDK terinstal, saya masih perlu menentukan JAVAC_HOME di .bashrc, terutama karena saya memiliki 4 versi Java menggunakan alternatif sudo - konfigurasi java untuk beralih di antara mereka.

Untuk mencari lokasi java di java dipilih sebagai alternatif

readlink -f $ (yang java)

Dalam kasus saya: /usr/java/jdk1.8.0_241-amd64/jre/bin/java

Jadi saya menetapkan berikut di .bashrc ke:

ekspor JAVA_HOME = / usr / java / jdk1.8.0_241-amd64 / jre / bin / java

ekspor JAVAC_HOME = / usr / java / jdk1.8.0_241-amd64 / bin / javac

ekspor PATH = $ PATH: /usr/java/jdk1.8.0_241-amd64/jre/bin

ekspor PATH = $ PATH: /usr/java/jdk1.8.0_241-amd64/bin/

Sekarang javac –version memberikan: javac 1.8.0_241

Ini berguna bagi mereka yang ingin menggunakan versi Oracle. Ingatlah untuk mengubah .bashrc Anda lagi jika Anda membuat perubahan dengan alternatif java.


0

Linux Mint 19.3.0

Saya menginstal Java Oracle secara manual, seperti ini:

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


-2

Pastikan Anda menginstal JDK / JRE terlebih dahulu.

ikuti langkah ini:

buka terminal, buka kamus root Anda dengan mengetik

cd /

Anda akan melihat folder Library

Sekarang ikuti jalan ini Library/Java/JVM/bin

Setelah Anda masuk, binAnda dapat melihat javacfile tersebut

Sekarang Anda perlu mendapatkan jalur folder ini untuk itu cukup tulis perintah ini

pwd

dapatkan jalan untuk Anda javac.


1
Sistem operasi dengan nama OP adalah CentOS.
Newb
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.