Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum>Software>Alte Java-Runtime-Version?

Alte Java-Runtime-Version?

Loop12309.12.1412:20
Nach dem Update auf Yosemite wollen die Adobe-Programme zum Start die alte Java Runtime SE 6-Version; die finde ich aber nicht mehr zum Download im Netz. Hat jmd eine Idee, was ich tun kann?
0

Kommentare

ExMacRabbitPro09.12.1412:45
Die letzte verfügbare Java 6 Version tut es auch unter Yosemite:
0
sierkb09.12.1413:11
Du brauchst kein Java 6, auch nicht den veralteten und sicherheitstechnisch anfälligen Java 6 Download von Apple.

Aktuell ist java 8. Nicht Java 7 und erst recht nicht mehr Java 6. Das von Apple angebotene Java 6 ist angesichts einiger ungepatchter Sicherheitslücken (Apples Support-Vertrag mit Oracle ist ausgelaufen, also patcht Apple daran nichts mehr, lässt es seitdem in dem Zustand, in dem es zuletzt gewesen ist als die Support-Verträge noch galten) absolut nicht mehr zu empfehlen.

Installiere Dir das aktuelle Java 8 Update 25 (Java 8u25), download bei Oracle hier: . Und zwar nicht das JRE (das wäre dann nur das Browser-Plugin unter /Library/Internet Plug-Ins), sondern das JDK (beinhaltet nicht nur das Browser-Plugin unter /Library/Internet Plug-Ins sondern auch das JDK, ebenfalls nochmal mit einer JRE unterhalb von /Library/Java/JavaVirtualMachines – und wer nervös mit den Augenbrauen zuckt, weil ihm das JDK zuviel des Guten ist und er eigentlich nur das JRE haben will: auch Apples Java ist nicht nur das JRE, sondern ein volles JDK, allerdings unterhalb von /System/Library/Java/JavaVirtualMachines abgelegt statt unterhalb von /Library/Java/JavaVirtualMachines wie das mit den java-Installationen von Oracle der Fall ist).

Aktuelles JDK 8 von Oracle installiert, und fertig ist die Laube. Kein (veraltetes, nicht mehr gepflegtes) Java 6 von Apple nötig (auch wenn der Download-Dialog von Apple was anderes suggeriert und dadurch verwirrt).
+1
MikeMuc09.12.1414:57
@sierkb
bist du dir oder jemand anderes sicher das Adobe wenn es wie oben geschrieben Java6 will auch mit neueren Javas zurecht kommt oder doch auf Java6 besteht. Bei Adobe bin ich mir nämlich nur in soweit sicher das man mit allem rechnen muß.
0
macbia
macbia09.12.1416:19
CS 6 funktioniert nicht mit Java 8, viele andere Programme auch nicht.
„i heart my 997“
0
Hannes Gnad
Hannes Gnad09.12.1417:03
sierkb
Du brauchst kein Java 6 (...)
Vermutlich doch, denn die ollen CS-Versionen, die Java 6 anfordern, laufen auch mit JDK-Installation nicht mit Java 7 oder 8. Oder hat das schon jemand erfolgreich hinbekommen?
0
sierkb09.12.1417:21
MikeMuc,
macbia,
Hannes Gnad:

,
0
Hannes Gnad
Hannes Gnad09.12.1417:41
Hm. Ok, bei Gelegenheit mal testen...
0
MikeMuc09.12.1417:58
sierkb:
Womit wir aber nur wissen das die CS6 Versionen (und wahrscheinlich neuere CCs) ohne Java6 aber mit Java 8 können.

Ob das auch für ältere zutrifft bleibt fraglich oder hast du da auch Links zu. Nett wäre auch eine Stellungnahme von Adobe bzw ein Links auf eine Adobeseite. Leider hat uns Loop123 nicht verraten welche Versionen er hat bzw. plant einzusetzen.
0
sierkb09.12.1418:12
MikeMuc
sierkb:
Womit wir aber nur wissen das die CS6 Versionen (und wahrscheinlich neuere CCs) ohne Java6 aber mit Java 8 können.

Ob das auch für ältere zutrifft bleibt fraglich

Habe ich mich verlesen, oder steht in dem von mir verlinkten MTN-Thread nicht was von CS 5.5?
wallenium, 02.12.14 17:02
läuft sogar die CS5.5. Sogar mit Java 8 ohne den Java 6 Kram von Apple nachzuinstallieren.

Ist doch älter als CS 6, oder? Zum Bleistift.
0
teorema67
teorema6709.12.1419:27
Hannes Gnad
sierkb
Du brauchst kein Java 6 (...)
Vermutlich doch, denn die ollen CS-Versionen, die Java 6 anfordern, laufen auch mit JDK-Installation nicht mit Java 7 oder 8. Oder hat das schon jemand erfolgreich hinbekommen?
Nein, CS6 läuft hier auch nur, wenn das alte Java 6 (1.6.0.jdk) vorhanden ist, mit Java 8 startet Illustrator nicht.

ID braucht kein Java, PS hab ich z. Z. nicht aufgespielt.
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
jogoto09.12.1420:27
Bei installiertem Java 7 oder Java 8 taucht Java 6 nach der Installation aus Apple Quellen nicht in der Liste der Java Versionen in den Systemeinstellungen auf. Das könnte manchen dazu verleiten ein fehlen derselben zu vermuten.
0
teorema67
teorema6709.12.1420:41
jogoto
Bei installiertem Java 7 oder Java 8 taucht Java 6 nach der Installation aus Apple Quellen nicht in der Liste der Java Versionen in den Systemeinstellungen auf. Das könnte manchen dazu verleiten ein fehlen derselben zu vermuten.
Wieso sollte man in die Systemeinstellungen schauen? Java6 liegt unter /System/Library/Java/JavaVirtualMachines/1.6.0.jdk. AFAIK, wenn der 1.6.0.jdk-Ordner nicht da ist, ist Java6 nicht installiert.
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
jogoto09.12.1420:50
teorema67

Ich weiß nicht warum man das sollte.
Meine Vermutung ist nur, dass die, die behaupten CS6 oder 5.5 liefe bei ihnen ohne Java6, es so gemacht haben, in Unkenntnis Deines Wegs.
0
mic6509.12.1421:33
In Mavericks geht JDK 8

Ich mische mich nur ungern ein, vor allem, weil ich hier neu und noch nicht up to date bin (Systemmäßig). Aber bei mir läuft CS6 unter Mavericks sehr wohl mit Java 8 JDK ohne ein "6er" jemals im System gehabt zu haben. Imac late 2012.
Ich denke, da gibt es noch Handlungsbedarf zur Implementierung.
0
MikeMuc09.12.1421:37
sierkb
Ist doch älter als CS 6, oder? Zum Bleistift.
Ja, hab ich wohl überlesen. Aber die Gelehrten streiten sich ja noch ob Java 6 nicht doch irgendwo herumlungert bei denen wo es angeblich nicht ist. Man wird sehen wenn mal wieder eine Installation älterer Adobesoftware auf neuerem System notwendig ist.
0
subjore09.12.1421:50
Also bei CS 3 hat Java 8 nicht geholfen. Außerdem hatte Safari sich geweigert die Apple support seite anzuzeigen. Ich musste den Link aus Safari nehmen und in Chrome hereinkopieren um mehr als eine leere Seite zu erhalten.
0
heiko.w
heiko.w09.12.1422:05
Ich habe jetzt mal kurzerhand Java6 unter Yosemite deinstalliert, das JDK8u25 installiert und den Rechner (MBP Retina) neu gestartet.

Wenn ich jetzt Illustrator CS6 starte verlangt man nach Java6.

Also geht nix ohne Java6
0
sierkb10.12.1408:41
heiko.w
Ich habe jetzt mal kurzerhand Java6 unter Yosemite deinstalliert

Und wie genau hast Du das gemacht? Womit? Was für Dateien genau hast Du da entfernt? Du weißt aber schon, dass jedes nackte plain-Vanilla OSX seit einiger Zeit von Haus aus mit ein paar Java-relevanten Hilfsdateien als festem Bestandteil des Betriebsystems daherkommt, die extra dafür da sind, für jede beliebige Java-Installation (egal ob nun von Apple oder durch einen anderen Hersteller bereitgestellt) eine zentrale Rolle zu spielen, um diese im System zu finden und zu managen? /usr/libexec/java_home zum Beispiel (sucht und findet sämtliche Java-Installationen (Java Virtual Machines in Form der JDKs) im System, und man kan sie damit managen und genau auswählen, welche man benutzen und bevorzugen will). Derei OSX-eigene Dateien hast Du in Deinem Übereifer kurzerhand nicht auch mit entfernt?

Das Java PreferencePane in den Systemeinstellungen findet übrigens immer nur ganz genau eine einzige JVM, nämlich die in Form der JRE, abgelegt in dem einen existenten Browser-Plugin in /Library/Internet Plug-Ins. Völlig egal, ob darüber hinaus auch noch ein oder mehrere JDKs installiert sind oder nicht. Und wenn über ein bestehendes JDK 7 oder JDK 8 (die ja ihrerseits zusätzlich jeweils auch immer nur ein zusätzliches JRE in Form eines Browser-Plugins in /Library/Internet Plug-Ins ablegen). Sprich: wer sich Apples veraltetes Java 6 über eine bestehende Oracle Java 7 oder Java 8 Installation drüber nagelt, der überschreibt damit sein neueres Browser-Plugin, das unter /Library/Internet Plug-Ins liegt mit Apples altem Kram. Sprich: das Browser-Plugin von Java 7 oder Java 8 sollte zuvor gerettet werden und dann dort wieder hingepackt werden. Oder Java 7 bzw. Java 8 nach Installation von java 6 wieder neu installiert werden, damit an die Stelle das neuere Browser-Plugin (auf das, weil's eine Kopie der JRE enthält, ggf. nicht nur Web-Browser zugreifen wollen sondern ggf. auch anderen Programme) wieder hingeschrieben werden kann durch die Installationsroutine. Oder eben von Hand retten und nachher wieder dorthin setzen.

Auch die Java-Einstellungen, das Java PreferencePane, das in den Systemeinstellungen erscheint, erscheint nur dann (und nur dann!), wenn Oracles Java bzw. Oracles Java-Plugin (JRE) installiert ist: weil dieses PreferencePane Bestandteil desselben ist (es ist unter /Library/PreferencePanes ein Symlink auf den Originalort des PreferencePanes, der sich jedoch im Java Browser-Plugin unterhalb von /Library/Internet Plug-Ins befindet). Dieses Preference-Pane ist kein Bestandteil von Apples Java-Installation und Java-Plugin, erscheint deshalb auch nicht, kann gar nicht erscheinen, wenn Apples Java 6 installiert ist und die Oberhand hat. Es erscheint nur dann, wenn unter /Library/Internet Plug-Ins ein Java Plugin (Browser-Plugin inklusive JRE) von Oracle installiert ist bzw. da das Sagen hat. Und es findet auch nur sich selbst, nämlich sich selbst in Form des Browser-Plugins, abgelegt in /Library/Internet Plug-Ins, es findet keine andere Java-Installation, kein JDK, egal wo diese auch installiert sein mag. Dafür ist nämlich Apples /usr/libexec/java_home zuständig, das findet alle vollständigen JDKs, egal ob von Apple oder Oracle oder irgendwem anders bereitgestellt und egal ob unter /System/Library/Java/JavaVirtualMachines (Apple) oder /Library/Java/JavaVirtualMachines (3rd-party, z.B. Oracle) installiert. Und Browser-Plugin (abgelegt unter /Library/Internet Plug-Ins) kann es immer nur eines geben, die überschreiben sich immer gegenseitig bei der Installation, je nachdem, welche Reihenfolge man beim Installieren verwendet. Wer da also kein veraltetes Apple Browser-Plugin drin liegen haben möchte (mal abgesehen davon, dass Apple ja eine XProtect-Sperrliste führt und dort aus Sicherheitsgründen sein eigenes Java 6 quasi sperrt, indem es eine Mindestversion für Java ansetzt genauso wie es das bzgl. Flash macht), der installiert sich entweder Apples alten Kram gar nicht erst, oder er sorgt dafür, dass an diesem Ort das aktuelle Browser-Plugin aus einer aktuellen Java-Installation von Oracle liegt (egal, ob nun JRE oder JDK von Oracle; btw: das JRE von Oracle ist allein und nur allein genau dieses Browser-Plugin, das JDK von Oracle beinhaltet beides, genau wie Apples veraltetes Java auch beides beinhaltet).

Hoffe, damit ein wenig mehr Klarheit geschaffen zu haben, wie das da alles organisiert ist.
0
ExMacRabbitPro10.12.1410:08
sierkb
Hoffe, damit ein wenig mehr Klarheit geschaffen zu haben, wie das da alles organisiert ist.

Es fragt sich nur, ob das dem Thread starter hilft sein Problem zu lösen...
0
jogoto10.12.1410:15
Die Lösung für den Threadstarter ist Java wie angeboten direkt von Apple zu installieren.
Oder er Vertraut auf sierkb und holt sich das aktuelle JDK. Damit könnte er auch Klarheit in unseren Disput bringen.
0
macbia
macbia10.12.1411:27
mic65
In Mavericks geht JDK 8
In Mavericks, aber was ist mit Yosemite? Ich hab hier ein frisches System installiert mit Java 8 und es starten weder Dreamweaver noch Minecraft sondern geben den Hinweis aus das die alte Java 6 Runtime installiert werden muss.

Und wenn man die Antworten hier liest, dann bin ich nicht der einzige bei dem es nicht geht.

Also bei mir geht es definitiv nicht. Wenn Jemand eine Lösung weiss wäre das toll, ich hab nämlich keine Lust Java 6 zu installieren.
„i heart my 997“
0
teorema67
teorema6710.12.1412:03
heiko.w
... Also geht nix ohne Java6
Genau, steht schon weiter oben. Wenn der 1.6.0.jdk-Ordner gelöscht ist, ist Java6 weg und CS geht nicht mehr.

Auf den Oracle-Seiten steht, wie Java6 Mac deinstalliert werden kann.
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
ExMacRabbitPro10.12.1412:12
Ich kann mir gut vorstellen, dass die Freunde von Adobe entgegen jedem Standard den Pfad auf die Java Runtime fest in ihrer Software verdrahtet haben. Statt nach einer Java_Home Environment Variable ausschau zu halten oder halt den Benutzer bei der Installation zu fragen wo denn das Java Home Verzeichnis auf dem System ist, wird (so spekuliere ich) fest der Pfad genommen wo früher Apples Java 6 JDK installiert war. Da die Oracle VM aber an einem anderen Platz liegt, klappt es nun nicht mehr.

Vielleicht könnte man ja mal einen Symlink an die Stelle des alten Java 6 JDK legen der auf das aktuelle Verzeichnis der Oracle VM verweist....? Vielleicht läuft es dann?
Ich kann es in Ermangelung der Adobe Produkte leider nicht ausprobieren....
0
sierkb10.12.1412:26
teorema67
Wenn der 1.6.0.jdk-Ordner gelöscht ist, ist Java6 weg

Sehe ich etwas differenzierter. Apples Java6-Installation verteilt sich über das gesamte System, hat Dateien, Ordner, Frameworks unterhalb von /System/Library/, /Library /usr/ etc. pp.
Und auch ohne Apples Java 6-Installation sind diesbzgl. im System schon verschiedene Dateien und Ordner von haus aus vorhanden und angelegt, das Installieren von Apples Java 6 überschreibt diese. Auch das evtl. zusätzliche Installieren von Xcode überschreibt diesbzgl. ein paar im nackten OSX bereits für Java angelegten Dateien und Pfade.

Einfach den 1.6.0.jdk-Ordner zu löschen, und dann ist kein Java6 mehr auf dem System vorhanden, ist vor diesem Hintergrund somit eine nicht korrekte Aussage, finde ich.
Auf den Oracle-Seiten steht, wie Java6 Mac deinstalliert werden kann.

Oracle informiert auf dieser FAQ-Seite (lesenswert, auch unsere Fragen hier werden dort hinreichend beantwortet), wie man Oracles Java 7 bzw. Java 8 ggf. deinstalliert: . Und wie man ggf. ein Apple Java 6 wieder reaktivieren und wiederherstellen kann, Apple hat dazu auch ein Support-Dokument bereitgestellt: .
Wie man Apples Java 6 deinstalliert, steht bei Oracle meines Wissens nicht, ansonsten bitte Link dazu, in der genannten FAQ steht's meines Wissens jedenfalls nicht.
0
sierkb10.12.1412:35
ExMacRabbitPro
Ich kann mir gut vorstellen, dass die Freunde von Adobe entgegen jedem Standard den Pfad auf die Java Runtime fest in ihrer Software verdrahtet haben. Statt nach einer Java_Home Environment Variable ausschau zu halten oder halt den Benutzer bei der Installation zu fragen wo denn das Java Home Verzeichnis auf dem System ist, wird (so spekuliere ich) fest der Pfad genommen wo früher Apples Java 6 JDK installiert war. Da die Oracle VM aber an einem anderen Platz liegt, klappt es nun nicht mehr.

Vielleicht könnte man ja mal einen Symlink an die Stelle des alten Java 6 JDK legen der auf das aktuelle Verzeichnis der Oracle VM verweist....? Vielleicht läuft es dann?
Ich kann es in Ermangelung der Adobe Produkte leider nicht ausprobieren....

+1

Genau das sehe und vermute ich auch so. Es wäre nicht das erste Mal, dass genau deswegen Probleme existieren, die eigentlich nicht existieren müssten, wenn sauber gearbeitet worden wäre.
Auch ich kann es leider nicht direkt am Objekt nachprüfen, weil ich hier keine Adobe Software installiert habe. Aber ich meine mich zu erinnern, im Netz mal drüber gestolpert zu sein, dass ein einfacher Symlink an der richtigen Stelle (nämich an der Stelle, wo die Adobe Software nachschaut) auf ein aktuelles JRE/JDK bei manchem Abhilfe geschaffen hat. Eben weil diese alte Adobe Software auf einen alten Pfad zu Java_HOME vertraut, der bei Apple schon längst und seit Jahren missbilligt worden und von Apple nicht mehr standardmäßig gesetzt wird und nur noch kulanzmäßig von der alten Java 6-Installation Apples noch gesetzt wird nebenbei und es deswegen dann eben zufällig funktioniert, eben weil dieser Pfad/Symlink da noch vorhanden ist (der eigentlich nicht mehr sein sollte und dürfte laut Apple und laut Apple auf dessen Vorhandensein schon seit Jahren nicht mehr vertraut werden sollte laut Apple, weil Apple schon seit Jahren vorhatte, das zu ändern und abzuschaffen).
0
gfhfkgfhfk10.12.1412:41
sierkb
Du brauchst kein Java 6, auch nicht den veralteten und sicherheitstechnisch anfälligen Java 6 Download von Apple.
Es gibt diverse Java Softwarepakete, die explizit die Java Version abfragen. D.h. ein Wechsel der Java JRE oder JDK hilft da gar nichts. Will man das Verhalten ändern braucht man Zugriff auf den Sourcecode.
0
gfhfkgfhfk10.12.1412:46
Nachtrag: Der Versuch kann natürlich nicht schaden.
0
heiko.w
heiko.w10.12.1417:14
sierkb
heiko.w
Ich habe jetzt mal kurzerhand Java6 unter Yosemite deinstalliert

Und wie genau hast Du das gemacht? Womit? Was für Dateien genau hast Du da entfernt?

Ich habe nur folgendes entfernt:
/System/Library/Java/JavaVirtualMachines/
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin
/Library/PreferencePanes/JavaControlPanel.prefpane
Danach habe ich den Rechner neu gestartet, das aktuelle JDK installiert und noch mal neu gestartet.
Dann lief Illustrator CS6 nicht mehr.
0
teorema67
teorema6710.12.1418:01
Jetzt müsste ein Freiwilliger hier:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk

das versuchen:
ExMacRabbitPro
... mal einen Symlink an die Stelle des alten Java 6 JDK legen der auf das aktuelle Verzeichnis der Oracle VM verweist ...
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
Marcel_75@work
Marcel_75@work10.12.1418:20
Meines Wissens nach benötigt zumindest der Illustrator-Updater (ein eigenes Adobe-Installer-Paket) ein Java 6.

Hat denn nun mal schon jemand wie von sierkb beschrieben ein Java 8 JDK (also nicht nur das "kleine" JRE) in einem frischen Yosemite (also eins ohne Apple Java 6) installiert und getestet, ob:

1. Sich Illustrator und Dreamweaver dann noch installieren lassen? (das sollte klappen)
2. Sich Illustrator und Dreamweaver dann noch aktualisieren lassen? (genau das könnte Probleme machen)
3. Sich Illustrator und Dreamweaver starten lassen? (nie probiert, da noch nicht auf Yosemite umgestiegen)

Danke für Erfahrungsberichte.
0
teorema67
teorema6710.12.1419:09
So geht es: Ich lasse den alten 1.6.0.jdk-Ordner in /System/Library/Java/JavaVirtualMachines und hänge da ein Alias von Contents des JavaAppletPlugin.plugin aus Java8u25 hinein. Illustrator startet und will kein Java6 mehr.
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
Marcel_75@work
Marcel_75@work10.12.1419:21
teorema67: Gut zu wissen.

Du hast aber nicht nur ein Java 8 JRE, sondern ein komplettes Java 8 JDK installiert, richtig?

Kannst Du mal bitte noch testen, ob sich dein Illustrator auch aktualisieren lässt (welche Version der CS nutzt du eigentlich)?

Danke!
0
teorema67
teorema6710.12.1419:30
Ich habe das installiert: jre-8u25-macosx-x64.dmg

Hier:
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
teorema67
teorema6710.12.1420:32
Marcel_75@work
... Kannst Du mal bitte noch testen, ob sich dein Illustrator auch aktualisieren lässt (welche Version der CS nutzt du eigentlich)?
CS6. Der Updater läuft, aber momentan gibt es auch kein Illustrator-Update zum einspielen:
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
teorema67
teorema6713.12.1410:53
teorema67
So geht es: Ich lasse den alten 1.6.0.jdk-Ordner in /System/Library/Java/JavaVirtualMachines und hänge da ein Alias von Contents des JavaAppletPlugin.plugin aus Java8u25 hinein. Illustrator startet und will kein Java6 mehr.
Gerade noch einmal alles getestet: Mit dem Java8-Contents-Folder als Alias im 1.6.0.jkd-Folder laufen alle CS6 Programme, der Updater startet und arbeitet, habe jetzt das ADR-Update damit geladen, Java6 wird nicht mehr verlangt.
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
Hannes Gnad
Hannes Gnad13.12.1411:14
Gut zu wissen, danke.
0
heiko.w
heiko.w13.12.1411:46
Vielen Dank @teorema67!
0
Marcel_75@work
Marcel_75@work13.12.1411:52
Danke teorema67.
0
oxid
oxid29.01.1522:42
hallo zusammen, ich muss das hier gerade nochmal beleben,
ich habe hier einen clean install von yosemite (aktuellste version 10.10.2) auf meiner Kiste.
CS 6 neu installiert, Illustrator will nicht starten. das bekannte problem. hier ist ja auch eine Beschreibung von teorema67 wie es funktionieren soll.

teorema67

So geht es: Ich lasse den alten 1.6.0.jdk-Ordner in /System/Library/Java/JavaVirtualMachines und hänge da ein Alias von Contents des JavaAppletPlugin.plugin aus Java8u25 hinein. Illustrator startet und will kein Java6 mehr.
Gerade noch einmal alles getestet: Mit dem Java8-Contents-Folder als Alias im 1.6.0.jkd-Folder laufen alle CS6 Programme, der Updater startet und arbeitet, habe jetzt das ADR-Update damit geladen, Java6 wird nicht mehr verlangt.
https://data.mactechnews.de/481717.png

ich finde nirgends einen contents Ordner. kann mir das bitte jemand genau beschreiben wie ich da vorgehen muss. wär supernett!
0
teorema67
teorema6730.01.1507:06
JDK liegt jetzt nicht mehr in /System/Library/Java, sondern in /Library/Internet Plug-Ins/JavaAppletPlugin.plugin. Dort mit cntr klicken und Paketinhalt zeigen lassen, die nächste Ordnerebene ist "Contents":
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
sierkb30.01.1508:25
teorema67
JDK liegt jetzt nicht mehr in /System/Library/Java, sondern in /Library/Internet Plug-Ins/JavaAppletPlugin.plugin.

Das ist insofern nicht ganz richtig, als dass das JDK da noch nie lag. Unter /System/Library/Java/JavaVirtualMachines/1.6.0.jdk lag/liegt stets und nur und ausschließlich Apples JDK (inkl. JRE als Bestandteil des JDK, wobei das JRE wesentlicher und einziger Bestandteil des Browser Plugins ist und somit JRE gleich Browser Plugin).

Jedes JDK von jedem anderen Hersteller (hier also: Oracle, denkbar und möglich wäre aber auch irgendein anderer Hersteller z.B. Community Builds von OpenJDK oder, wenn es sie gäbe, Builds von IBM oder Red Hat) liegt schon immer unter /Library/Java/JavaVirtualMachines/jdkxxxx.jdk

Und das Browser-Plugin (sprich: JRE) liegt und lag schon immer unter /Library/Internet Plug-Ins/JavaAppletPlugin.plugin
Oracle legt an dem Ort physikalisch tatsächlich das Browser-Plugin (sprich: JRE) ab (und ein Bestandteil dieses Packages sind die Systemeinstellungen für Java, deshalb gibt's die nur mit Oracles Java, nicht aber mit Apples Java, welche dann unter /Library/PreferencePanes gesymlinkt sind und dadurch zugänglich). Währendhingegen Apple an der Stelle unter /Library/Internet Plug-Ins/JavaAppletPlugin.plugin immer nur einen Symlink gesetzt hat, der das tief in /System/Library/Java/JavaVirtualMachines/1.6.0.jdk verschachtelt gelegene Apple'sche Browser-Plugin (=JRE) auf diese Weise zugänglich gemacht hat.

Und die Problematik mit Adobes veralteten CS-Suiten ist wohl darin begründet, dass die diese alten Pfade hart kodiert haben und an der Stelle dann halt eben Apples altes JDK bzw. JAVA_HOME erwarten. Anstatt den Pfad von JAVA_HOME, also den Pfad zum JRE mit OSX' seit langem eingebautem und seit Jahren anempfohlenen /usr/libexec/java_home Werkzeug dynamisch zu ermitteln.
Bis vor kurzem hat Apple mit Rücksicht auf solche Programme, die derlei veraltete Pfadstrukturen hartcodiert haben auch noch unter /Library/Java einen Symlink gehabt, der den Pfad zu Apples Java-Installation ebenfalls hart codiert hatte. Und auf diesen hartcodierten Pfad, auf diesen Symlink haben solche Programme wie die veralteten CS-Suiten gebaut, dass der existiert und sie somit das JRE finden. Von der Existenz von /usr/libexec/java_home wussten diese Programme damals noch nicht, da gab's /usr/libexec/java_home möglicherweise auch noch nicht.
Und Apples veraltete Java6-Installation macht nebenbei genau das: sie erstellt an 1 oder 2 Stellen 2 Symlinks und stellt genau diesen Pfad, den diese veralteten Programme an der Stelle erwarten, weil er eben im Programm so fest reincodiert ist, zur Verfügung. Obwohl dieser Pfad, diese Symlinks von Apple eben nicht mehr vorgesehen sind und Apple sie in neueren Versionen von OSX inzwischen gestrichen hat (lange genug angekündigt und darauf hingewiesen hatte Apples Java-Verantwortlicher das auf Apples java-dev-Mailingliste und in vielen Apple-Dokumenten wurde das auch über Jahre wiederholt, dass der Pfad dynamisch ermittelt werden soll mittels des schon lange von ihnen als Ersatz geschaffenen /usr/libexec/java_home)

Und um derlei alten Programmen nun trotzdem die Existenz eines anderen, moderneren und sichereren Java JDK bzw. JRE bekannt zu machen, muss man im Grunde nur an dieser einen Stelle den von diesem Programm erwarteten und im Programm hartcodierten Pfad nachbilden bzw. per Symlink nachträglich schaffen. Was anderes macht Apples veraltete JDK6-Installation übrigens auch nicht. So ein einfacher Symlink, dieser Pfad, der dann gefunden werden kann, weil er im betreffenden Programm leider hartcodiert ist, das ist das ganze Geheimnis, warum es auf einmal mit Apples altem und leider unsicherem weil seit langem nicht mehr gepflegtem und per Sicherheitsupdates auf den neuesten Stand gebrachten JDK 6 funktioniert. An mehr liegt es eigentlich nicht. An der richtigen Stelle also einen Pfad bzw. Symlink geschaffen, klappt's auch mit jedem aktuellen JDK bzw. JRE.

Immer im Kopf habend: das JRE ist die reine Laufzeitumgebung, das Browser-Plugin besteht im Wesentlichen aus einem JRE, ist im Grunde ein JRE, das JDK besteht noch aus weiteren Entwicklungswerkzeugen drumherum, und das JDK beinhaltet ein JRE, und das JDK-Installations-Paket beinhaltet im Grunde sogar zwei JREs: einmal als Bestandteil des JDKs und einmal als Bestandteil des parallel mitinstallierten Browser-Plugins, welches von Oracle auch solo erworben werden kann, indem man es sich unter Oracles java.com herunterlädt und nicht bei Oracle auf der Java-Hauptdownloadseite).

Hoffe, so mancher sieht nun ein wenig klarer, und ich habe damit jetzt nich noch mehr verwirrt.
0
ca
ca30.01.1508:45
komplex isses, aber informativ.
verwirrung für die, die nicht genau hinterherdenken, erhellend für genauleser.
von daher bin ich etwas verwirrt, weil ich die genaue struktur am rechner nicht gleichzeitig beim lesen schritt für schritt nachvollziehen kann mangels zeit.

habe aktuell java 8 nach java 6 installiert.
cs 5,5 findet was es braucht ohne weiteres, und oracle's webseite berichtet, daß java im browser aktuell sei. insofern alles gut.
„Gar nicht krank ist auch nicht gesund. (Karl Valentin)“
0
teorema67
teorema6731.01.1508:40
sierkb
Das ist insofern nicht ganz richtig, als dass das JDK da noch nie lag. Unter /System/Library/Java/JavaVirtualMachines/1.6.0.jdk lag/liegt stets und nur und ausschließlich Apples JDK (inkl. JRE als Bestandteil des JDK, wobei das JRE wesentlicher und einziger Bestandteil des Browser Plugins ist und somit JRE gleich Browser Plugin).

Jedes JDK von jedem anderen Hersteller (hier also: Oracle, denkbar und möglich wäre aber auch irgendein anderer Hersteller z.B. Community Builds von OpenJDK oder, wenn es sie gäbe, Builds von IBM oder Red Hat) liegt schon immer unter /Library/Java/JavaVirtualMachines/jdkxxxx.jdk

Und das Browser-Plugin (sprich: JRE) liegt und lag schon immer unter /Library/Internet Plug-Ins/JavaAppletPlugin.plugin...
Das ist doch Haarspalterei. Tatsächlich liegen auf dem MacOS Java6 und Java8 an den beiden von mir angegebenen verschiedenen Orten. Bei Java6 war das JavaAppletPlugin.plugin im internet Plug-Ins Ordner deswegen auch nur ein Alias.


ca
cs 5,5 findet was es braucht ohne weiteres, und oracle's webseite berichtet, daß java im browser aktuell sei. insofern alles gut.
Klar, du hast beide. Dein Browser verwendet Java8, deine CS Java6. Da ich das veraltete Java6 nicht mehr will und auch nicht brauche, hab ich es rausgeschmissen und die CS mit einem Link auf Java8 versorgt
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
sierkb31.01.1517:29
teorema67
Das ist doch Haarspalterei.

Nein, ist es insofern nicht, weil wenn man das System dahinter nicht versteht, man gewisse andere Dinge und Probleme und Fragestellungen, die damit einhergehen, auch nicht versteht. Das Ganze ist eigentlich ein in sich sehr konsistentes, sehr logisches und sauber durchdachtes System.
Tatsächlich liegen auf dem MacOS Java6 und Java8 an den beiden von mir angegebenen verschiedenen Orten.

Ausdrücklich: ja! Dem ist so! Und es war auch niemals anders, und es war auch niemals anders vorgesehen. Diese Auftrennung ist wohldurchdacht, dahinter steckt System, dahinter steckt eine wohldurchdachte Absicht. Das gilt es zu begreifen.
Bei Java6 war das JavaAppletPlugin.plugin im internet Plug-Ins Ordner deswegen auch nur ein Alias.

Was Anderes habe ich nie geschrieben – im Gegenteil. Zudem solltest Du betonen: bei Apples angebotenem Java, letzte angebotene Version ist halt eine veraltete Java 6 Version und nicht weil's Java 6 ist/war. Mit der Version hat das nix zu tun. Oracle pflegt Java 6 aber bis zum heutigen Tag weiter und versorgt mit jeder Patch-Runde nicht nur (das übrigens im April diesen Jahres auslaufende) Java 7 und das aktuelle Java 8, sondern durchaus ebenfalls immer noch Java 6, nur werden diese aktuell gepatchten Java 6-Versionen halt nur noch gegen Geld angeboten für Kunden, die aus welchen Gründen auch immer unbedingt drauf angewiesen sind. Nur will Apple daran offenbar nicht teilhaben, hat keine Lust dafür zu zahlen, also lassen sie es und hocken halt eben auf der letzten von Oracle unbezahlt zu bekommenden Java 6-Version rum und können ihren Kunden eben nur diese veraltete Version noch anbieten statt wenigstens einer aktuell gepatchten.

Die letzte von Oracle frei und unbezahlt angebotene und auf Oracles Download-Seite erhältliche Java 6 Version ist Java6u45 (Java 6 Update 45). So auch Apples angebotenes Java 6, Java für OS X 2014-001, das ist genau jenes von Oracle angebotene Java 6 Update 45 oder maximal Update 65. Inzwischen hat Oracle aber ein paar weitere Male gepatcht – auch Java 6. Und diese Patches sind in Apples angebotenem Java leider nicht drin.

Mittlerweile ist Oracles Java 6 für zahlende Kunden aber angekommen bei Java 6 Update 85 und demnächst, ab diesem Monat Februar sogar aufgrund eines aus Sicherheitsgründen zwischengeschobenen bei Java 6 Update 95. Würde Apple Oracle Geld rüberschieben, könnte Apple sein Java 6 auch auf genau diesen Stand heben, auf Update 85 oder bald 95. Will Apple aber offenbar nicht. Ist ihnen offenbar wurscht bzw. nicht wichtig genug und das Geld nicht wert, dass Apples Kunden und Nutzer sich damit wenigstens eine aktuell mit Patches versorgte 6er-Version von Apples Server runterladen können, wenn sie es denn schon müssen, weil veraltete andere Software wie die von Adobe danach leider verlangt, weil sie den betreffenden veralteten und von Apples Java 6 bereitgestellten Suchpfad bzw. Order-Struktur bereitstellt.
teorema67
Klar, du hast beide. Dein Browser verwendet Java8, deine CS Java6. Da ich das veraltete Java6 nicht mehr will und auch nicht brauche, hab ich es rausgeschmissen und die CS mit einem Link auf Java8 versorgt

Das Problem ist aus Sicherheitssicht das, dass wenn Apples veraltetes Java 6 noch auf der Platte ist, es trotzdem von irgendeinem Schadprogramm, dass genau darauf spekuliert und das abtestet, angesprungen werden kann und sich genau jene Lücken zunutze machen könnte, die eben Apples veraltetes und nicht auf den neuesten Stand gepatchtes Java 6 innehat. Auch wenn diese Java 6-Installation von keinem installierten Programm genutzt wird. Die Suchpfade zu Apples Java 6 sind bekannt, und wer da an der Stelle fündig wird als Schadprogramm, weil er ein installiertes Java 6 vorfindet, kann sich da ggf. einklinken und entspr. ungepatchte Lücken ausnutzen. Deshalb wäre es sehr sinnvoll und verantwortungsvoll, wenn Apple ihr angebotenes Java 6 wenigstens auf einem aktuellen Stand halten würden, sodass da keine Lücken offenstehen. Tut Apple aber nicht. Weil Oracle gepatchte aktuelle Versionen nur zahlenden Kunden anbietet und Apple da wohl zu knauserig ist, dieses Geld auf den Tisch zu legen – was aber bestimmt im Sinne seiner Kunden und Nutzer bzw. deren genutzer Systeme wäre, wenn Apple an der Stelle weniger knauserig wäre.
0
Calogero01.02.1515:02
Hallo,

Apple’s JavaForOSX2014-001 habe ich auf Yosemite installiert, nachdem Photoshop CS4 ohne nicht wollte. Nach dem Lesen dieses sehr informativen Threats habe ich auf einem Clone-System v10.10.2 Folgendes gemacht, um Java mal testweise zu aktualisieren.

- Unter Library/Internet Plug-Ins das Alias des alten JavaAppletPlugin gelöscht, welches auf das Original unter System/Library/Java/Support/Deploy.bundle verweist (dort im Paketinhalt).
- Dann Oracles jre-8u31-macosx-x64 installiert, welches das aktuelle JavaAppletPlugin ablegt unter Library/Internet Plug-Ins.
- Den alten Ordner "Contents" unter System/Library/Java/JavaVirtualMachines/1.6.0.jdk gelöscht und durch ein Alias des neuen Ordners "Contents" des aktuellen Plug-ins ersetzt (siehe Paketinhalt des neuen Plug-ins).
- Unter System/Library/Java/Extensions nichts angetastet. Dazu Frage: Gibt es dort irgendwelche bekannten Sicherheitslücken, die zu löschen wären?
- Unter System/Library/Java/Support die 2 Bundles "CoreDeploy" und "Deploy" gelöscht.
- Da ohne das "Deploy.bundle" Photoshop CS4 nicht startet, habe ich dann einen leeren Ordner als "Deploy.bundle" angelegt.

Resultat:
Photoshop CS4 startet, ohne nach Java 6 zu fragen, und ist offenbar mit einem inhaltslosen Ordner bzw. Bundle "Deploy.bundle" zufrieden.

Frage:
Kann mir jemand, als wäre ich 5, erklären, a) wieso das funktioniert, und b), ob ich somit alle bisher bekannten, risikobehafteten Komponenten von Apple's Java 6 entfernt habe?
Würde dann das Originalsystem ggfs. entsprechend ändern.

War ewig nicht mehr hier und hoffe, ich bekomme dennoch Resonanz.
Vielen Dank + LG
0
teorema67
teorema6701.02.1518:42
Calogero
- Den alten Ordner "Contents" unter System/Library/Java/JavaVirtualMachines/1.6.0.jdk gelöscht und durch ein Alias des neuen Ordners "Contents" des aktuellen Plug-ins ersetzt (siehe Paketinhalt des neuen Plug-ins).
Genau wie ich es oben beschrieben habe


Calogero
- Unter System/Library/Java/Extensions nichts angetastet. Dazu Frage: Gibt es dort irgendwelche bekannten Sicherheitslücken, die zu löschen wären?
Nicht dass ich wüsste. Der Inhalt gehört zu Java Essentials, die AFAIR auch vom OS selbst installiert werden (man möge mich korrigieren, wenn ich mich falsch erinnere) – wenn du da irgendwas löscht, funzt event. dein OS nicht mehr und du kannst froh sein, wenn du dann noch TM zum Laufen kriegst.



Calogero
- Unter System/Library/Java/Support die 2 Bundles "CoreDeploy" und "Deploy" gelöscht.
- Da ohne das "Deploy.bundle" Photoshop CS4 nicht startet, habe ich dann einen leeren Ordner als "Deploy.bundle" angelegt.

Resultat:
Photoshop CS4 startet, ohne nach Java 6 zu fragen, und ist offenbar mit einem inhaltslosen Ordner bzw. Bundle "Deploy.bundle" zufrieden.

Frage:
Kann mir jemand, als wäre ich 5, erklären, a) wieso das funktioniert, und b), ob ich somit alle bisher bekannten, risikobehafteten Komponenten von Apple's Java 6 entfernt habe?
AFAIK sind im deploy.bundle die Java6 Komponenten hinterlegt, dort startet aber keine Java Runtime. Adobe Apps wollen nur wissen, ob deploy.bundle da ist, deswegen funktioniert die Täuschung mit einem leeren Bundle. Die Java Runtime, die sie verwenden, ist die in "1.6.0.jkd". Es müssten so also alle risikobehafteten Komponenten von Java 6 entfernt sein (vermutlich auch dann, wenn das Original deploy.bundle noch da ist).

Ich erinnere ein Support Doc von Oracle, nach dem man Java6 durch Löschen von "1.6.0.jkd" entfernen sollte – demnach wäre das deploy.bundle nicht weiter relevant. Dazu passt auch: Note that Apple does have a Java plug-in reference in its CoreDeploy.bundle package, but in the latest update to Java 6 this plug-in is used to redirect users to download Java 7, so linking to it will not provide a working Java plug-in. (Hier: )
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
Calogero02.02.1509:41
Danke für die Antwort. Ich lasse die Bundles also mal drauf und setze nur das "Content" Alias. Je weniger im System geändert wird, umso besser, meinst Du wohl.
Es müssten so also alle risikobehafteten Komponenten von Java 6 entfernt sein (vermutlich auch dann, wenn das Original deploy.bundle noch da ist)

Frage:
Das alte Alias unter Library/Internet Plug-Ins/JavaAppletPlugin verweist auf das CoreDeploy.bundle, das aktuelle natürlich nicht.
Aber vielleicht ist dennoch zu bedenken, dass das alte Plugin noch in den Bundles zu finden ist?
Ich bin langjähriger User, systemmässig aber Laie geblieben und weiß nicht, ob die Bundles von Schadsoftware theoret. ausgenutzt werden könnten. Jedenfalls gibt es wohl Bedanken:
sierkb
Das Problem ist aus Sicherheitssicht das, dass wenn Apples veraltetes Java 6 noch auf der Platte ist, es trotzdem von irgendeinem Schadprogramm, dass genau darauf spekuliert und das abtestet, angesprungen werden kann... Die Suchpfade zu Apples Java 6 sind bekannt, und ... [ein] Schadprogramm ... kann sich da ggf. einklinken und entspr. ungepatchte Lücken ausnutzen.

oder ?
Tendiere eher zu
0
teorema67
teorema6702.02.1509:54
Calogero
Frage:
Das alte Alias unter Library/Internet Plug-Ins/JavaAppletPlugin verweist auf das CoreDeploy.bundle, das aktuelle natürlich nicht.
Aber vielleicht ist dennoch zu bedenken, dass das alte Plugin noch in den Bundles zu finden ist?
Ich bin langjähriger User, systemmässig aber Laie geblieben und weiß nicht, ob die Bundles von Schadsoftware theoret. ausgenutzt werden könnten. Jedenfalls gibt es wohl Bedanken:
sierkb
Das Problem ist aus Sicherheitssicht das, dass wenn Apples veraltetes Java 6 noch auf der Platte ist, es trotzdem von irgendeinem Schadprogramm, dass genau darauf spekuliert und das abtestet, angesprungen werden kann... Die Suchpfade zu Apples Java 6 sind bekannt, und ... [ein] Schadprogramm ... kann sich da ggf. einklinken und entspr. ungepatchte Lücken ausnutzen.

oder ?
Tendiere eher zu
Das ist tatsächlich die Frage, die vielleicht sierkb beantworten kann: Kann die im deploy.bundle hinterlegte (und nicht zum Ausführen bestimmte) Java6 Runtime dennoch gestartet werden, und wenn ja, wurde diese Methode schon zum Ausführen von Malware verwendet?

Ich finde deine Idee mit dem Fake-deploy.bundle übrigens gut (danke!) und habe sie jetzt übernommen. Kann bisher keinen Nachteil erkennen.
„Wenn ich groß bin, geh ich auch auf die Büffel-Universität! (Ralph Wiggum)“
0
sierkb02.02.1512:53
teorema67
Kann die im deploy.bundle hinterlegte (und nicht zum Ausführen bestimmte) Java6 Runtime dennoch gestartet werden

Wer hat denn wo und womit bestimmt, dass die nicht ausgeführt werden darf?

Warum funktionieren dann alte CS-Versionen dennoch, sobald Apples Java 6 installiert ist, wenn dieses doch angeblich nicht zum Ausführen bestimmt sei?
In seiner XProtect.meta.plist von OSX 10.10.2 hat Apple die Minimum-Version für ein installiertes Java, das ausgeführt werden darf auf folgenden Wert gesetzt:
<key>JavaWebComponentVersionMinimum</key>
<string>1.6.0_45-b06-451</string>
Das ist genau die alte und nicht mehr dem allerneuesten Oracle Patch-Stand entsprechende Version bzw. evtl. sogar eine darunter, die Apple mit seinem Java 6 selber anbietet.

Sprich: Apple hat sein eigenes angebotenes Java 6 durch entsprechendes Senken der Minimalversion somit auf eine Whitelist gesetzt, gerade damit es ausgeführt werden kann und OSX' eingebaute XProtect-Funktion und Gatekeeper es eben nicht am Ausführen hindern, was aber sicher passieren würde, wenn Apple die Minimalanforderung auf ein aktuelleres Java 7 (dessen goldene Zeit ja jetzt auch bald zu Ende geht, aktuell ist Java8, und Java 9 steht schon in den Startlöchern) oder gar ein aktuelles Java 8 hochsetzen würde.
und wenn ja, wurde diese Methode schon zum Ausführen von Malware verwendet?

Ja, durchaus, sonst wäre Apple in der Vergangenheit sicher nicht in der Not gewesen, sein angebotenes Java 6 zu patchen und eine gepatchte Version auszurollen. Und was passiert, wenn man das sein lässt bzw. zu lange damit wartet, wissen wir spätestens seit Flashback.

Und bzgl. der gewesenen Bash-Lücke, die die Unix-Welt erschüttert hatte vor ein paar Monaten, war es ähnlich: egal, ob man via MacPorts oder Homebrew alternativ noch zusätzlich eine neuere Bash installiert hatte, Apples systemeigene Bash war verwundbar weil erreichbar, völlig egal, ob sie nun vom Nutzer als Standard-Shell genutzt wurde oder ungenutzt rumlag, solange Apple diese systemeigene Bash nicht ebenfalls gefixt hatte. Was installiert ist und erreichbar ist und aufgrund von Sicherheitslücken verwundbar ist, ist ein Risiko. Entweder patcht man es bzw. hat eine gepatchte Version installiert, oder man entfernt es oder installiert es gar nicht erst, um sich diesem Risiko nicht auszusetzen bzw. es zu minimieren.
0
Calogero02.02.1517:02
teorema67
Ich finde deine Idee mit dem Fake-deploy.bundle übrigens gut (danke!) und habe sie jetzt übernommen.

Habe jetzt auch unter Library/Internet Plug-Ins das aktuelle JavaAppletPlugin.plugin von Oracle durch einen gleichnamigen Ordner ersetzt => Photoshop CS 4 startet ohne Problem, obwohl nun weder Oracle's Java 8 noch Apple's Java 6 installiert sein dürfte, sondern nur noch leere Fake-Dateien.

Frage: Was liegt denn bei einem neuen, unveränderten Yosemite 10.10.2 ohne Flash und Java standardmässig unter System/Library/Java/Extensions ?
sierkb
Entweder patcht man es bzw. hat eine gepatchte Version installiert, oder man entfernt es oder installiert es gar nicht erst, um sich diesem Risiko nicht auszusetzen bzw. es zu minimieren.

Frage:
Heisst das, das Ersetzen der beiden Bundles "CoreDeploy" und "Deploy" unter System/Library/Java/Support durch leere, identisch benannte Ordner mir Suffix .bundle ist somit zumindest nicht sinnlos?

Vielen Dank vorab für Eure Zeit beim Antworten. LG
0

Kommentieren

Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.