it-swarm.asia

كيفية تثبيت جافا 8 على ماك

أريد القيام ببعض البرمجة باستخدام أحدث JavaFX ، والذي يتطلب Java 8. أنا أستخدم IntelliJ 13 CE و Mac OS X 9 Mavericks. قمت بتشغيل برنامج تثبيت Oracle 8 Java ، وتبدو الملفات وكأنها انتهى بها الأمر

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

لكن الإصدارات السابقة في

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

لست متأكدًا من سبب قيام المثبت الأخير بوضع هذا في /Library بدلاً من /System/Library (ولا ما هو الفرق). لكن /usr/libexec/Java_home لا يجد 1.8 ، لذا فإن جميع المنشورات التي وجدتها حول كيفية تعيين إصدار جافا الحالي لديك لا تعمل. لقد حاولت إضافة رابط رمزي لجعله يبدو وكأنه 1.8 في مسار /System/Library... ، لكنه لا يساعد. /usr/libexec/Java_home -V لا يزال يسرد Java 1.6 القديم فقط.

ومن المفارقات أن لوحة التحكم "Java" ضمن تفضيلات النظام لا تعرض سوى Java 1.8!

لماذا لا يضع مثبت أوراكل مكانه الحقيقي؟ وكيف يمكنني حل هذه المشكلة؟

691
user3763100

لا تعتمد على Oracle لتثبيت Java بشكل صحيح على جهاز Mac.

استخدام البيرة . سيؤدي هذا إلى تثبيت أحدث jdk:

brew cask install Java

إذا كنت ترغب في إدارة إصدارات متعددة من Java على جهاز Mac ، ففكر في استخدام jenv .

UPDATE: الآن بعد أن أصبح Java 8 هو الإصدار الأحدث ، إذا كنت تريد تثبيت Java 8 على هذا النحو:

brew tap caskroom/versions
brew cask install Java8

للحصول على قائمة بجميع الإصدارات القديمة من Java: brew tap caskroom/versions ثم استخدم brew search Java.

نحن نستخدم brew cask لأننا سنستخدم خلاف ذلك مثبت Oracle GUI الذي من المحتمل ألا يقوم بتثبيت Java بشكل صحيح على جهاز Mac. (استخدم brew cask install APP لتثبيت تطبيقات واجهة المستخدم الرسومية ؛ استخدم brew install APP.) جافا ليست تطبيق GUI ؛ لا يتطلب الأمر {should "برميل خشبي" ولكن أوراكل على الأقل ثابت.

1538
l3x

ل الكابيتان ، سييرا و عالية سييرا

أولاً تثبيت وتحديث الشراب من المحطة الطرفية:

/usr/bin/Ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

brew tap caskroom/versions

brew update

جافا 8:

brew cask install Java8

جافا أحدث:

brew cask install Java
400
kavehmb

أنا فقط فعلت هذا على بلدي MBP ، وكان لا بد من استخدامها

$ brew tap caskroom/versions
$ brew cask install Java8

من أجل الحصول على Java8 لتثبيت.

117
Jain Waldrip

أحد الخيارات التي بدأت أحبها حقًا لتشغيل التطبيقات على الكمبيوتر المحلي هو استخدام Docker. يمكنك ببساطة تشغيل التطبيق الخاص بك داخل حاوية JDK الرسمية - وهذا يعني أنك لا تقلق بشأن إعداد كل شيء على جهازك المحلي (أو القلق بشأن تشغيل إصدارات مختلفة متعددة من JDK لتطبيقات مختلفة إلخ)

على الرغم من أن هذا قد لا يساعدك في حل مشكلات التثبيت الحالية ، إلا أنه يمثل حلاً مما يعني أنه بإمكانك تحديد حقل الألغام للمشكلات المتعلقة بمحاولة تشغيل Java بشكل صحيح على جهاز dev الخاص بك!

الفوائد هي:

  1. لا حاجة لإعداد أي إصدار من Java على جهازك المحلي (ستعمل فقط على تشغيل Java داخل حاوية تقوم بسحبها من Docker Hub)
  2. من السهل جدًا التبديل إلى إصدارات مختلفة من Java عن طريق تغيير العلامة الموجودة في الحاوية.
  3. يتم تثبيت تبعيات المشروع داخل الحاوية - لذلك إذا قمت بفوضى التكوين الخاص بك ، يمكنك ببساطة nuke الحاوية والبدء من جديد.

مثال بسيط للغاية:

إنشاء Dockerfile:

FROM Java:8
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
  • نحن هنا نحدد الإصدار 8 من حاوي Java الذي يشغل حاوية SDK (Java:8 - لاستخدام Java 7 ، يمكنك فقط تحديد: Java:7)
  • نحن نقوم بتعيين الدليل المحلي مع الدليل: /usr/src/myapp داخل الحاوية

قم بإنشاء ملف docker-compose.yml:

version: "2"

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

الآن ، افترض أن لدينا ملف Java هذا:

HelloWorld.Java

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

لذلك لدينا بنية الملف التالية:

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

يمكنك أن تفعل أشياء جافا المختلفة مثل:

ترجمة:

docker-compose run --rm Java javac HelloWorld.Java 
  • تجدر الإشارة إلى أن HelloWorld.class يظهر في دليلك الحالي (وهذا هو السبب في أننا قد قمنا بتعيين الدليل الحالي إلى الموقع داخل الحاوية حيث يوجد رمزنا

المدى:

docker-compose run --rm Java java HelloWorld 
  • ملاحظة: في المرة الأولى التي تقوم فيها بتشغيل هذا ، ستجلب الصورة وما إلى ذلك. سيستغرق ذلك بعض الوقت - يحدث ذلك فقط في المرة الأولى
  • docker-compose run - لتشغيل أمر من داخل الحاوية
  • يخبر -rm عامل الميناء بإزالة الحاوية بمجرد الانتهاء من تشغيل الأمر
  • Java هو اسم الخدمة/الحاوية (من ملف الإنشاء الخاص بنا) والذي سيتم تشغيل هذا الأمر مقابله
  • ما تبقى من السطر هو الأمر الذي يجب تشغيله داخل الحاوية.

هذه طريقة رائعة للتعامل مع تشغيل إصدارات مختلفة من Java لتطبيقات مختلفة دون عمل فوضى كاملة للإعداد المحلي :).

هنا مثال أكثر تعقيدًا يحتوي على Maven وتطبيق ربيع بسيط

تنويه:

56
toast38coza

أواجه نفس المشكلة لحلها ، لأنني بحاجة إلى تثبيت JDK8 لتشغيل Android SDK Manager (لأنه يبدو أنه لا يعمل بشكل جيد مع JDK9). ومع ذلك ، أقول لك كيف يمكنني حل جميع المشكلات على جهاز Mac (Sierra).

أولا ، تحتاج الشراب مع برميل خشبي و jenv .

  1. يمكنك العثور على دليل مفيد هنا ، دليل تثبيت برميل البيرة . تذكر النقر فوق "الإصدارات/الإصدارات" التي تعمل في الجهاز: brew tap caskroom/versions
  2. بعد ذلك ، قم بتثبيت jenv بـ: brew install jenv
  3. قم بتثبيت أي إصدار تريده باستخدام cask brew cask install Java8 (أو Java7 أو Java إذا كنت تريد تثبيت أحدث إصدار ، jdk9)
  4. الخطوة الأخيرة هي تكوين الإصدار الذي سيتم تشغيله (والسماح لـ jenv بإدارة Java_HOME) jenv versions لسرد جميع الإصدارات المثبتة على جهازك ثم تنشيط الإصدار الذي تريده مع jenv global [JDK_NAME_OF_LIST]

يمكنك العثور على معلومات مفيدة أخرى هنا على Github Gist brew-Java-and-jenv.md ، على هذه المدونة قم بتثبيت JDK متعددة على Mac وعلى Jenv Website

23
Benedetto Abbenanti

لم تعد Java8 متاحة في البيرة ، ولن تعمل brew install Java8.

بدلاً من ذلك ، استخدم:

brew cask install adoptopenjdk/openjdk/adoptopenjdk8

انظر هذا الالتزام للحصول على التفاصيل الفنية.

يرجى ملاحظة أنك قد ترى مشكلات حول Cask adoptopenjdk8 exists in multiple taps. هذه مشكلة معروفة ، يتم العمل عليها حاليًا ، ويمكنك مشاهدتها هنا:

https://github.com/AdoptOpenJDK/homebrew-openjdk/issues/106

بالنسبة لأولئك الذين لا يرغبون في الاطلاع على التفاصيل ، إليك ملخص:

# To install JDK8
brew cask install adoptopenjdk/openjdk/adoptopenjdk8

# To be able to safely run 'brew cleanup'
brew untap adoptopenjdk/openjdk
brew untap caskroom/versions
brew cleanup
21
Dave Kerr
brew cask install caskroom/versions/Java8
20
Arun

إذا كان لديك العديد من إصدارات Java على جهازك وتريد أن تختارها ديناميكيًا في وقت التشغيل ، أي في حالتي ، لدي إصداران:

ls -la /Library/Java/JavaVirtualMachines
drwxr-xr-x  3 root  wheel    96B Nov 16  2014 jdk1.7.0_71.jdk/
drwxr-xr-x  3 root  wheel    96B Mar  1  2015 jdk1.8.0_31.jdk/

يمكنك تغييرها عن طريق تعديل محتوى /etc/profile. فقط أضف (أو عدّل) السطرين التاليين في نهاية الملف:

export Java_HOME=YOUR_Java_PATH/Contents/Home
export PATH=$Java_HOME/bin:$PATH

في حالتي ، يجب أن يكون الأمر كما يلي إذا أردت استخدام:

جافا 7:

export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk/Contents/Home
export PATH=$Java_HOME/bin:$PATH

جافا 8:

export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk/Contents/Home
export PATH=$Java_HOME/bin:$PATH

بعد حفظ الملف ، يرجى تشغيل source /etc/profile ويجب أن يعمل. فيما يلي النتائج عند استخدام الخيار الأول والثاني وفقًا لذلك:

جافا 7:

Java -version
Java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)

جافا 8:

Java -version 
Java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)

تتشابه العملية إذا كان مجلد Java موجودًا في مواقع مختلفة.

13
nxhoaf

لدي تطبيقات تستخدم كلاً من Java 7 و 8 ويجب أن أعود جيئة وذهابا طوال الوقت.

أنا استخدم هذا السيناريو الذي كتبه يوهان:

http://www.jayway.com/2014/01/15/how-to-switch-jdk-version-on-mac-os-x-maverick/

يمكنك الآن تعيينه عند بدء التشغيل أو الاتصال بالبرنامج النصي بعد ذلك.
قم بتثبيت JDK لنظام التشغيل Mac.

جافا 7

http://www.Oracle.com/technetwork/Java/javase/downloads/jdk7-downloads-1880260.html

جافا 8

http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html

12
Nathan Dunn

تشغيل هذه الأوامر على ماك سييرا عالية

brew update
brew tap caskroom/versions
brew cask install Java8

وتحقق مع القيادة

Java -version
12
TLbiz

الافتراض: جهاز Mac وكنت قد قمت بالفعل بتثبيت البيرة.

تثبيت برميل خشبي:

$ brew tap caskroom/cask
$ brew tap caskroom/versions

لتثبيت أحدث جافا:

$ brew cask install Java

لتثبيت Java 8:

$ brew cask install Java8

إذا كنت ترغب في تثبيت/إدارة إصدار متعدد ، فيمكنك استخدام "jenv":

تثبيت وتكوين jenv:

$ brew install jenv
$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile
$ source ~/.bash_profile

أضف جافا المثبتة إلى jenv:

$ jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
$ jenv add /Library/Java/JavaVirtualMachines/jdk1.11.0_2.jdk/Contents/Home

لرؤية كل جافا المثبتة:

$ jenv versions

سوف يعطي الأمر أعلاه قائمة Java المثبتة:

* system (set by /Users/lyncean/.jenv/version)
1.8
1.8.0.202-ea
Oracle64-1.8.0.202-ea

قم بتكوين إصدار Java الذي تريد استخدامه:

$ jenv global Oracle64-1.6.0.39

لتعيين Java_HOME:

$ jenv enable-plugin export
12
Lyncean Patel

استخدم المثبت ، لوقا

لديك مصادر متعددة للحصول على تطبيق مثبّت سهل الاستخدام لوضع Java على جهاز Mac. تبدو الإجابات الأخرى التي تشير إلى المشروب أو الطرق الأخرى متطرفة قليلاً بالنسبة لي. ما عليك سوى تنزيل أداة تثبيت Mac من مصدر موثوق وتشغيله.

فيما يلي مخطط انسيابي للعثور على مصدر Java 11 ، وبعضها يوفر أيضًا Java 8.

flowchart for choosing a source for Java 11.

المجلد JavaVirtualMachines صحيح الآن

لماذا لا يضع مثبت أوراكل مكانه الحقيقي؟ وكيف يمكنني حل هذه المشكلة؟

ليست مشكلة.

المجلد /Library/Java/JavaVirtualMachines/ هو المنزل الجديد لـ JVM s on macOS .

لتثبيت JVM ، استخدم مثبّتًا ، تمت مناقشته أدناه.

لإلغاء التثبيت ، استخدم الباحث عن حذف JVM من هذا المجلد. سيُطلب منك كلمة مرور مسؤول النظام لإكمال الإزالة.


جافا 9 و 10 و 11

مرة أخرى في عام 2010 ، انضم Apple the OpenJDK project ، مع Oracle ، IBM ، Red Hat / Azul ، وبائعي جافا الآخرين. يساهم كل عضو في شفرة المصدر والاختبار والتعليقات في قاعدة بيانات OpenJDK الموحدة.

ساهمت Apple بمعظم الشفرات الخاصة بـ Mac لنظام JVM. الآن لم تعد Apple تطلق JVM الخاص بـ Mac. لديك الآن اختيارك لمورد JVM ، مع إنشاءات من قاعدة بيانات OpenJDK.

ستجد شفرة المصدر في: http://openjdk.Java.net

إيقاع الإصدار الجديد

عليك أن تدرك أنه في عام 2017 ، اعتمدت Oracle و JCP و OpenJDK خطة جديدة للإصدار السريع للإصدارات المجدولة بانتظام من Java ليتم تسليمها بطريقة يمكن التنبؤ بها.

قراءة هذا بلوق 2018-07 Azul Systems لمزيد من التفاصيل ، القضاء على Java Update Confusion by Simon Ritter .

اقرأ أيضا جافا لا تزال حرة .

الباعة

للحصول على قائمة شاملة إلى حد ما بتطبيقات JVM السابقة والحالية ، راجع هذه الصفحة في ويكيبيديا .

فيما يلي ثلاثة مصادر نشطة حاليًا أعرفها.

أوراكل JVM

توفر Oracle تثبيتات JDK و JRE لأنظمة تشغيل متعددة بما في ذلك macOS.

على مر السنين منذ الحصول على Sun ، جمعت Oracle بين أفضل أجزاء محركات JVM ، HotSpot و {JRocket ، ودمجتها في OpenJDK يستخدم المشروع كأساس للتطبيقات ذات العلامات التجارية الخاصة بجافا.

تهدف خطة العمل الجديدة الخاصة بهم ، اعتبارًا من عام 2018 ، إلى توفير تطبيق Java الذي تحمل علامة أوراكل مقابل رسوم في الإنتاج وبدون تكلفة للاستخدام في التطوير/الاختبار/العرض التوضيحي. يتطلب دعم الإصدارات السابقة برنامج دعم مدفوع. لقد أعلنوا عن عزمهم على أن يكون إصدارهم ذا العلامات التجارية متساويًا مع إصدار OpenJDK. لقد تبرعوا بوظائفهم التجارية مثل Flight Recorder لمشروع OpenJDK.

Zulu & Zing بواسطة Azul

Azul Systems توفر مجموعة متنوعة من منتجات JVM.

  • يعتمد خط Zulu مباشرةً على OpenJDK ، وهو متاح بدون تكلفة مع خطط الدعم المدفوعة الاختيارية.
  • يقدم خط Zing منتجات JVM التجارية المحسنة مع تطبيقات تقنية بديلة مثل أداة تجميع النفايات .

كلا الخطوط الخاصة بهما توفر أدوات تثبيت لنظام التشغيل MacOS.

أنا أستخدم حاليًا {Zulu لنظام Java 10.0.1 على نظام التشغيل macOS Sierra عالية مع IntelliJ 2018.2 و Vaadin 8 . أنا تم تنزيلها من هذه الصفحة . بالمناسبة ، أجد لا أجد أي عناصر مرتبطة بـ Java مثبتة على تطبيق Apple تفضيلات النظام.

AdoptOpenJDK.net

AdoptOpenJDK هو جهد بقيادة المجتمع لبناء ثنائيات مصدر OpenJDK. إنهم يعتزمون تقديم تحديثات مع مرور الوقت ، كما تبرع بها أفراد المجتمع.

  • اختيارك إما HotSpot أو OpenJ9 محرك.
  • يبني المتاحة لنظام التشغيل MacOS و Linux و Windows.

OpenJ9 بواسطة Eclipse

OpenJ9 project هو تطبيق آخر لمحرك JVM ، وهو بديل لـ HotSpot.

تم رعايته الآن في مؤسسة Eclipse Foundation ، مع التكنولوجيا والدعم الذي تبرعت به شركة IBM في عام 2017.

بالنسبة للثنائيات مسبقة البناء ، فإنها تحيلك إلى المشروع {AdoptOpenJDK المذكور أعلاه.


كيفية تثبيت

تعتبر أدوات التثبيت المقدمة من Oracle أو Azul سهلة الاستخدام تمامًا. فقط قم بتشغيل تطبيق المثبت على جهاز Mac الخاص بك. تظهر نافذة للإشارة إلى تقدم التثبيت.

عند الانتهاء ، تحقق من تثبيت JVM الخاص بك عن طريق:

  • تفضل بزيارة المجلد /Library/Java/JavaVirtualMachines/ لمشاهدة عنصر JVM الجديد.
  • قم بتشغيل وحدة تحكم مثل Terminal.app واكتب Java -version لرؤية العلامة التجارية ورقم إصدار JVM الخاص بك.

بعد التحقق من النجاح ، قم بإلغاء تثبيت صورة .dmg في الباحث. ثم قم بنقل ملف .dmg الذي قمت بتنزيله.

9
Basil Bourque

يبدو أن لا أحد قد ذكر رجل SDK ( https://sdkman.io/ ) حتى الآن.

يسمح SKD man بتثبيت إصدارات متعددة من Java على Mac وسهولة التبديل بين هذه الإصدارات. يتوفر مزيد من المعلومات على https://sdkman.io/usage .

فمثلا:

$ sdk list Java                                                                                                                                                                                                                       
================================================================================
Available Java Versions
================================================================================
   * 12.ea.20-open
     11.0.1-zulu
 > * 11.0.1-open
     10.0.2-zulu
     10.0.2-open
     9.0.7-zulu
     9.0.4-open
     8.0.192-zulu
     8.0.191-Oracle
   + 8.0.181-Oracle
     7.0.181-zulu
     1.0.0-rc-10-grl
     1.0.0-rc-9-grl
     1.0.0-rc-8-grl


================================================================================
+ - local version
* - installed
> - currently in use
================================================================================

$ sdk install Java 8.0.191-Oracle

$ sdk use Java 8.0.191-Oracle

Using Java version 8.0.191-Oracle in this Shell.                                                                                                                                                                                                      

$ Java -version                                                                                                                                                                                                                        
Java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)

$ sdk use Java 11.0.1-open                                           

Using Java version 11.0.1-open in this Shell.

$ Java -version                                                                                                                                                                                                                        openjdk version "11.0.1" 2018-10-16
OpenJDK Runtime Environment 18.9 (build 11.0.1+13)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.1+13, mixed mode)
                                                                                                                                                                                                         ```


7
stderr

أفضل طريقة هي استخدام مدير حزمة المشروب ولكن الأمر

 brew cask install Java8

فشل مع الخطأ:

Error: No available formula with the name "Java8" 

لذلك استخدم

brew cask install caskroom/versions/Java8

كيف وجدت "caskroom/الإصدارات/Java8": باستخدام الأمر brew search:

brew cask search Java8
7
Navjot Bhardwaj

باستخدام الشراب

brew install Caskroom/cask/Java
7
Santhosh

أسهل طريقة -

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)

P.S - ما هو المشروب؟ يمتد Homebrew-Cask إلى Homebrew ، ويحل مشكلة تنفيذ أمر إضافي - "لتثبيت ، اسحب هذا الرمز ..." بعد تثبيت تطبيق باستخدام Homebrew .

3
sapy

أبسط هو تنزيل ملف dmg من الموقع التالي وتثبيته بواسطة النقر المزدوج

http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html

ابحث عن JVMs المتاحة من الدليل الرئيسي

ls -al /Library/Java/JavaVirtualMachines

وتحديث .bash_profile مع إصدار relevent

export Java_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_XXX.jdk./Contents/Home
export PATH=$Java_HOME/bin:$PATH

وأخيرا

source ~/.bash_profile
2
vimal krishna

إذا كنت تستخدمهليسللاستخدام الشخصي ، فقد ترغب في استخدام OpenJDK بدلاً من ذلك لتجنب أي دعوى قضائية محتملة من Oracle.

brew cask install adoptopenjdk8
2
Edmund Lee

محاولة :

الشراب برميل تثبيت جافا 8 ،، وسوف يعطي النتيجة أدناه

8tracksradiohelperoptopenjdk8 amitv87-pip corretto8 icons8 vmware-fusion8 x48 zulu8

أدخل التالي: سوف يتم تثبيت brew cask installoptopenjdk8 ---- Java 8 في نظام Mac.

0
arg

أود أن أقترح استخدام الرجل SDK الذي من السهل جدا تغيير الإصدار (مؤقتا ودائما) ويوفر SDKs الأخرى كذلك. لقد تم استخدام الرجل SDK لأكثر من عام الآن.

https://sdkman.io/

0
saif ali