Bilgisayarımı yeniden Ubuntu’ya formatladım, sistemi çökertmiştim de Bunun üzerine Yeni Ubuntu’ma kuracağım 4 programdan birisi jdk idi. Şu sayfada anlatıldığı üzere kurdum, terminalde gayet normal görünüyordu:
erdem@erdem-Aspire-A114-31:~$ java -version
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4, mixed mode)
erdem@erdem-Aspire-A114-31:~$ javac -version
javac 10.0.2
Ama NetBeans, Eclipse, intelliJ idea hiçbir ide çalışmadı. Eclipse şu logları verdi:
!SESSION Thu Mar 14 20:45:42 EET 2019 ------------------------------------------
!ENTRY org.eclipse.equinox.launcher 4 0 2019-03-14 20:45:42.833
!MESSAGE Exception launching the Eclipse Platform:
!STACK
java.lang.ClassNotFoundException: org.eclipse.core.runtime.adaptor.EclipseStarter
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:626)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
Şu anda Java’yı sadece terminalden kullanabiliyorum.
Sayfada Oracle JDK kurulumu anlatilmis. Bunu tercih etmek icin ozel bir sebebin var mi? Ubuntu’da OpenJDK paketleri hazir olarak geliyor (openjdk-X-jdk). Onlardan birini kurmani tavsiye ediyorum.
Ki zaten openjdk-10-jdk kurulu gibi gozukuyor. Hatta muhtemelen IDE’lerin problemi de bu.
IDE’lerin nasil kurulduklarini ve nasil calistirildiklarini bilmeden bir sey soylemek zor. Yukaridaki exception alakasiz; daha dogrusu sebebi degil semptomu gosteriyor. Hangi runtime’in calistigini bile goremiyoruz. Daha cok log veya arastirma lazim.
Ama hizli cozum JDK’lardan birini silmek. Veya en azindan Oracle JDK 8’i default yapma. Gerektiginde elle calistirirsin, hem oyle ogretici de oluyor.
Bence en iyi cozum Oracle JDK’yi kaldirip OpenJDK kullanmak. Oracle JDK’nin cok sorun olusturduguna tanik oldum, ozellikle de Ubuntu paketi olmaktan cikip ucuncu partiler tarafindan saglanmaya baslayinca. En guveniliri dagitimin resmi paketlerini kullanmak. :)
Java 8’i kaldırdım, Default olarak java 10 kuruluydu sanırım. Onun paket adını nasıl bulacağım? apt search jdk çıktıları
Sanırım tam kaldıramamışım. Ubuntu Java kullanıyor mu? Default Java’yı silip sistemi yeniden çökertmek istemem.
Aldığım Java kitabı Java 8’i anlatıyor, Windows’ta iken yeni sürümünü kullanayım deyip Java 11 kurmuştum, nasıl oldu hatırlamıyorum ama sorunluydu. Silip Java 8 kurmuştum. O zamandan beri Java 11 kullanmadım. (Kullanmak istemedim)
Benim deneyimimde, Oracle JDK–OpenJDK uyumsuzluklari cok cabuk cozuluyor. (JavaFX gibi API farkliligi veya EE feature’lari olmayan noktalarda tabi ki) Programcilarin Oracle’a olan kollektif nefretinden oldugunu dusunmeyi seviyorum :)
Bas bas “Oracle JDK kullanin bak, yoksa en pis noktada crash oluruz” diyen programlari bile OpenJDK ile calistiriyorum; sayica azlar ama daha sorun yasamadim.
Danismanlik verdigim bir is icin 3 ayri makinede (Ubuntu) JetBrains Rider kullandim (toplam > 200 saat), C#. Makinelerde Oracle JDK yoktu—diyecektim ki, Rider’in kendi JRE’si ile beraber geldigini gordum. OpenJDK.
Ne yazık ki hayır. Şu an dersler yoğun. En son haftasonu terminalden çalışmıştım biraz. Ama bu sorunu acilen çözmem lazım. En kötü sanal makinedeki Windows XP’ye jdk kurar öyle çalışırım.
Şimdi, yeniden Linux Mint kurdum, sistemde default java 10 yüklü. Ama java compiler (javac) yüklü değil. Doğru düzgün javac kurmam gerek, ama yapamadım.
erdem@erdem-Aspire-A114-31:~$ javac
Command 'javac' not found, but can be installed with:
sudo apt install default-jdk
sudo apt install openjdk-11-jdk-headless
sudo apt install ecj
sudo apt install openjdk-8-jdk-headless
erdem@erdem-Aspire-A114-31:~$ java -version
openjdk version "10.0.2" 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.4, mixed mode)
erdem@erdem-Aspire-A114-31:~$ sudo apt install openjdk-10-jdk-headless
Paket listeleri okunuyor... Bitti
Bağımlılık ağacı oluşturuluyor
Durum bilgisi okunuyor... Bitti
E: openjdk-10-jdk-headless paketi bulunamadı