update - java version prüfen mac




Wie installiere ich Java 8 auf Mac? (8)

Ich möchte etwas mit dem neuesten JavaFX programmieren, das Java 8 benötigt. Ich benutze IntelliJ 13 CE und Mac OS X 9 Mavericks. Ich habe Oracles Java 8-Installationsprogramm ausgeführt, und die Dateien sehen so aus, als wären sie gelandet

/Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk

aber frühere Versionen sind bei

/System/Library/Java/JavaFrameworks/jdk1.6....

Ich bin mir nicht sicher, warum das neueste Installationsprogramm dies in /Library anstelle von /System/Library (und was der Unterschied ist). Aber /usr/libexec/java_home findet nicht 1.8, also funktionieren alle Posts, die ich gefunden habe, um deine aktuelle Java-Version einzustellen, nicht. Ich habe versucht, einen symbolischen Link hinzuzufügen, um es wie 1.8 aussehen zu lassen, ist in der /System/Library... Pfad, aber es hilft nicht. /usr/libexec/java_home -V listet nur das alte Java 1.6 auf.

Ironischerweise zeigt das "Java" -Bedienfeld unter Systemeinstellungen nur Java 1.8!

Warum bringt Oracle's Installer es nicht dorthin, wo es wirklich hingehört? Und wie kann ich dieses Problem umgehen?


Eine Option, die ich zum Ausführen von Anwendungen auf meinem lokalen Computer wirklich mag, ist die Verwendung von Docker. Sie können Ihre Anwendung einfach innerhalb des offiziellen JDK-Containers ausführen - das bedeutet, dass Sie sich nicht darum kümmern müssen, alles auf Ihrem lokalen Rechner einzurichten (oder sorgen Sie sich darum, mehrere verschiedene Versionen des JDK für verschiedene Apps auszuführen)

Auch wenn dies Ihnen bei Ihren aktuellen Installationsproblemen nicht helfen kann, ist es eine Lösung, die Ihnen erlaubt, das Minenfeld von Problemen im Zusammenhang mit dem Versuch, Java korrekt auf Ihrem Dev-Rechner laufen zu lassen, zu umgehen!

Die Vorteile sind:

  1. Sie müssen keine Java-Version auf Ihrem lokalen Computer einrichten (Sie führen Java nur in einem Container aus, den Sie aus Docker Hub ziehen)
  2. Sehr einfach zu verschiedenen Versionen von Java wechseln, indem Sie einfach das Tag auf dem Container ändern.
  3. Projektabhängigkeiten werden innerhalb des Containers installiert - wenn Sie also Ihre Konfiguration durcheinander bringen, können Sie den Container einfach neu starten und neu starten.

Ein sehr einfaches Beispiel:

Erstellen Sie eine Dockerfile :

FROM java:8
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
  • Hier geben wir den Java-Container an, der die Version 8 des SDK java:8 ( java:8 - um Java 7 zu verwenden, könnten Sie einfach Folgendes angeben: java:7 )
  • Wir /usr/src/myapp das lokale Verzeichnis dem Verzeichnis: /usr/src/myapp im Container zu

Erstellen Sie eine docker-compose.yml Datei:

version: "2"

services:
  java:
    build: .
    volumes:
      - .:/usr/src/myapp

Angenommen, wir haben diese Java-Datei:

HelloWorld.java

public class HelloWorld {
    public static void main(String[] args) {        
        System.out.println("Hello, World");
    }
}

So haben wir die folgende Dateistruktur:

.
|_ Dockerfile
|_ docker-compose.yml
|_ HelloWorld.java

Sie können verschiedene Java-Sachen machen wie:

kompilieren:

docker-compose run --rm java javac HelloWorld.java 
  • Sie sollten beachten, dass die HelloWorld.class in Ihrem aktuellen Verzeichnis angezeigt wird (dies ist der Fall, weil wir das aktuelle Verzeichnis dem Speicherort innerhalb des Containers zugeordnet haben, in dem unser Code vorhanden ist

Lauf:

docker-compose run --rm java java HelloWorld 
  • Hinweis: Wenn Sie das erste Mal ausführen, wird das Bild usw. abgerufen. Dies wird eine Weile dauern - es passiert nur beim ersten Mal
  • docker-compose run - Führt einen Befehl aus dem Container aus
  • -rm weist -rm an, den Container nach Abschluss des Befehls zu entfernen
  • java ist der Name des Service / Containers (aus unserer docker-compose-Datei), gegen den dieser Befehl ausgeführt wird
  • Der Rest der Zeile ist der Befehl, der innerhalb des Containers ausgeführt wird.

Dies ist ein ziemlich cooler Weg, verschiedene Java-Versionen für verschiedene Anwendungen auszuführen, ohne dass Sie Ihre lokale Umgebung komplett durcheinander bringen müssen :).

Hier ist ein etwas komplexeres Beispiel mit Maven und einer einfachen Spring App

Haftungsausschluss:


Einfachster Weg -

1) brew cask install java (No need to install cask separately it comes with brew)

2) java -version

java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)

PS - Was ist Brühfass? Homebrew-Cask erweitert Homebrew, und löst den Ärger der Ausführung eines zusätzlichen Befehls - "Installieren, ziehen Sie dieses Symbol ..." nach der Installation einer Anwendung mit Homebrew .


Gebräu Fass installieren Caskroom / Versionen / Java8


Gebräu verwenden

brew install Caskroom/cask/java

Ich habe das gerade auf meinem MBP gemacht und musste es benutzen

$ brew tap caskroom/versions
$ brew cask install java8

um java8 zu installieren.


Ich habe das gleiche Problem zu lösen, weil ich JDK8 installieren muss, um Android SDK Manager auszuführen (weil es scheint, dass nicht gut mit JDK9 funktionieren). Allerdings erzähle ich dir wie ich alle Probleme auf einem Mac (Sierra) löse.

Zuerst müssen Sie mit Fass und Jenv brauen .

  1. Hier finden Sie eine nützliche Anleitung, Homebrew Cask Installationsanleitung . Denken Sie daran, auf "Caskroom / Versionen" im Terminal zu brew tap caskroom/versions : brew tap caskroom/versions
  2. Danach installiere jenv mit: brew install jenv
  3. Installieren Sie die gewünschte Version mit Cask brew cask install java8 (oder java7 oder java wenn Sie die neueste Version installieren möchten, jdk9)
  4. Der letzte Schritt besteht darin, zu konfigurieren, welche Version ausgeführt werden soll (und jenv Ihre JAVA_HOME- jenv versions verwalten), um alle auf Ihrem Computer installierten Versionen jenv versions und dann die gewünschte jenv global [JDK_NAME_OF_LIST] mit jenv global [JDK_NAME_OF_LIST]

Sie können andere nützliche Informationen hier auf diesem Github Gist brew-java-and-jenv.md , auf diesem Blog Installieren Sie mehrere JDK auf einem Mac und auf der jenv


Unterhalb der Schritte funktionierte für mich.

1) Deinstallieren Sie alle jdks

Im Terminal-Fenster Kopieren und Einfügen den folgenden Befehl:

sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefpane

2) Installieren Sie APPLE jdk.

https://support.apple.com/kb/DL1572?locale=en_US

3) Lade das neueste JDK von Oracle herunter und installiere es, für mich war es JDK 1.82

http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html

Das ist alles, es wird wie ein Zauber wirken.


Verlassen Sie sich nicht auf Oracle, um Java ordnungsgemäß auf Ihrem Mac zu installieren.

Verwenden Sie Homebrew :

brew update
brew cask install java

Wenn Sie mehrere Java-Versionen auf Ihrem Mac verwalten möchten, sollten Sie jenv .

UPDATE: Jetzt, da Java 8 nicht mehr die aktuellste Version ist, müssen wir es auf folgende Weise installieren:

brew tap caskroom/versions
brew cask install java8

Um eine Liste aller älteren Versionen von Java zu erhalten: brew cask search java

Wir verwenden Brew- Casks, da wir sonst das Oracle-GUI-Installationsprogramm verwenden würden, das Java wahrscheinlich nicht richtig auf Ihrem Mac installiert. (Verwenden Sie brew cask install APP , um GUI-Apps zu installieren; verwenden Sie brew install APP .) Java ist keine GUI-App; Es sollte kein "Fass" erfordern, aber zumindest ist Oracle konsistent.





java-8