Chciałbym używać WatchService API, jak wspomniano w tym linku: http://download.oracle.com/javase/tutorial/essential/io/notification.html
Po przeczytaniu dowiedziałem się, że WatchService jest częścią klasy NIO, która jest zaplanowana na JDK 7. Jest więc w wersji beta. W porządku.
http://jdk7.java.net/download.html zawiera pakiet JDK, który pobrałem i rozpakowałem. Mam kilka folderów. Nie wiem, co z nimi zrobić.
Potem przeczytałem trochę więcej i odkryłem, że pewna fajna grupa ludzi stworzyła JDK 7 jako plik binarny, więc ktoś taki jak ja może go łatwo zainstalować. Nazywa się Open JDK: http://code.google.com/p/openjdk-osx-build/
Więc pobrałem plik .dmg i zainstalowałem go. Następnie otwieram „Java Preference” i widzę, że jest dostępny OpenJDK7.
Więc teraz czuję, że mogę zacząć wypróbowywać WatchService API. Z samouczka w pierwszym linku autor dał plik .java, aby go najpierw przetestować i upewnić się, że działa. Oto link do pliku: http://download.oracle.com/javase/tutorial/essential/io/examples/WatchDir.java
Więc uruchamiam Eclipse (właściwie używam STS) i tworzę nowy projekt Java i wybieram JaveSE-1.7 w "użyj środowiska wykonawczego JRE:". W folderze src skopiowałem i wkleiłem plik WatchDir.java.
I wciąż widzę mnóstwo falistych czerwonych linii. Wszystkie pliki „import.java.nio. *” Są czerwone i nie mogę ich uruchomić jako aplikacji Java.
Co muszę zrobić?
Odpowiedzi:
Oracle wydała JDK 7 dla OS X .
źródło
/Library/Java/JavaVirtualMachines/1.7.0.jdk
i przeciągnąć „Java SE 7” na początek listy w zakładce „Ogólne”. Będzie to równieżjavac
wskazywać na wersję Java 1.7 podczas uruchamiania terminala.W ten sposób uzyskałem 1.7 do pracy z Eclipse. Mam nadzieję, że to pomoże.
to powinno być to :)
źródło
Java 9, 10, 11
Lata temu Apple dołączył do OpenJDK projektu , przenosząc swój poprzednio zastrzeżony kod JVM specyficzny dla macOS jako bezpłatne oprogramowanie typu open source. Firma Apple zaprzestała dystrybucji własnej JVM / JDK marki, polegając na markowych wydaniach Oracle, które zawierają wersję dla macOS.
Firma Oracle niedawno ogłosiła zamiar dostosowania swojej wersji JVM oznaczonej marką Oracle do zgodności z projektem OpenJDK, z praktycznie taką samą bazą kodu. Firma przekazała nawet swoje wcześniej komercyjne narzędzia, Flight Recorder i Mission Control , na rzecz projektu OpenJDK. Jest to część przejścia do nowego planu szybkiego „pociągu wydań”, który ma przewidywać zaplanowane wersje Java i OpenJDK. W szczególności okresy bezpłatnych publicznych aktualizacji zostały teraz skrócone. Zobacz to ogłoszenie 2017-09 i ten post autorstwa Marka Reinholda .
W rezultacie użytkownicy Javy w macOS mają do wyboru dostawców implementacji Javy. W tym momencie co najmniej trzy źródła są oparte na OpenJDK dla macOS:
W międzyczasie IBM przekazał kod maszyny JVM Fundacji Eclipse, która jest teraz objęta projektem OpenJ9 . Zastanawiam się, czy mogą również obsługiwać wydanie macOS, chociaż jest za wcześnie, aby to stwierdzić.
Osobiście z powodzeniem używam wersji Zulu Java 10.0.1 firmy Azul na macOS High Sierra z powodzeniem z IntelliJ 2018.2 do tworzenia aplikacji internetowych opartych na Javie z Vaadin .
Instalacja / demontaż
Zarówno Oracle, jak i Azul zapewniają całkowicie łatwe w użyciu instalatory do zainstalowania JVM / JDK na komputerze Mac. Sprawdź swoją instalację, używając aplikacji Terminal.app (lub odpowiednika), aby wpisać i uruchomić:
Znajdziesz instalacje Java w tym folderze na poziomie głównym dysku (nie w folderze domowym):
Każda wersja od każdego dostawcy znajduje się tam, w oznaczonym folderze zagnieżdżonym. Możesz usunąć dowolną instalację, po prostu usuwając zagnieżdżony folder dla tej wersji i podając hasło systemowe po wyświetleniu monitu.
Java 8
Możesz pobrać pakiet Java Development Kit (JDK) dla języka Java 8 dla obsługiwanych wersji systemu Mac OS X:
Każdą zainstalowaną wersję maszyny JVM można znaleźć tutaj:
Więcej instrukcji i często zadawanych pytań można znaleźć w tym przewodniku Oracle .
Java 7
Dla każdego wydania Java 7 od aktualizacji 4, wersja na Maca była gotowa wraz z innymi platformami. Działa na komputerach Mac ze sprzętem 64-bitowym w systemie Lion (10.7.3+), Mountain Lion (10.8.3+) i Mavericks (10.9.x).
Firma Oracle ogłosiła oficjalne wydanie pakietu JDK dla Java SE 7 Update 4 w systemie Mac OS X (Lion) 26.04.2012. Nie ma już potrzeby sztuczek omówionych na tej stronie.
Instalacja jest prosta zgodnie z poniższymi instrukcjami :
To wydanie ma kilka ograniczeń, w szczególności brak wsparcia dla Java Web Start i wtyczki Java do przeglądarek internetowych. Wsparcie to jest spodziewane jeszcze w tym roku.
Po instalacji przeczytaj JDK for Mac ReadMe. Co najważniejsze, jeśli chcesz, aby Java 7 była domyślną, przeciągnij ją na górę listy w aplikacji Preferencje Java znajdującej się w folderze Narzędzia.
Mac OS X z łatwością obsługuje jednocześnie wiele maszyn JVM. Każdy znajduje się teraz tutaj:
Gratulacje dla zespołów Apple i Oracle za ich osiągnięcie. Ten maniak doznaje dreszczyku emocji, widząc Mac OS X na liście „ Certyfikowanej konfiguracji systemu ”.
Wskazówka: aby uruchomić Eclipse na komputerze Mac z zainstalowaną tylko Javą 7, otwórz plik aliasu o nazwie eclipse zamiast pliku o nazwie Eclipse.app .
Java 6
Apple w dalszym ciągu dostarcza aktualną implementację języka Java 6 dla wszystkich wersji systemu Mac OS X, aż do Mountain Lion.
Jeśli zrobisz coś, co wymaga języka Java, na przykład wpisz „java -version” w Terminal.app, pojawi się okno dialogowe z propozycją zainstalowania Java. Jeśli się zgodzisz, instalacja przebiega automatycznie, podobnie jak w przypadku innych „Aktualizacji oprogramowania” firmy Apple.
Znajdziesz Javę zainstalowaną w tej lokalizacji, inną niż Java 7 i 8:
Java 6 dobiegła końca z Oracle od 2013-02 (chyba że masz komercyjną umowę pomocy technicznej z Oracle). Więc powinieneś przejść do Java 7 lub 8.
Testowanie nowej wersji
W Terminal.app wpisz,
java -version
aby sprawdzić, która wersja jest bieżącą wersją domyślną.Usuwanie starych wersji
Po zainstalowaniu nowej wersji możesz odwiedzić folder opisany powyżej, aby usunąć stare wersje. Przenieś folder do Kosza i podaj swoje hasło systemowe, aby zakończyć przenoszenie.
Nawiasem mówiąc, Apple udostępnia listę mailingową dotyczącą problemów technicznych programistów związanych z Javą na OS X.
źródło
/System/Library/Java/JavaVirtualMachines
zawiera tylko Java 6 JDK./Library/Java/JavaVirtualMachines
(nie/System
). (b) Czy przeczytałeś dokumentację instalacji OracleReadMe
, i ustawiłeśPreferences
zgodnie z opisem w mojej odpowiedzi powyżej?Łatwym sposobem na zainstalowanie Javy 7 na komputerze Mac jest użycie Homebrew , dzięki wtyczce Homebrew Cask (która jest teraz instalowana domyślnie).
Uruchom to polecenie, aby zainstalować Javę 7:
źródło
caskroom/versions
jest nieaktualny? Na pewno jest tutaj: github.com/caskroom/homebrew-versions/blob/master/Casks/ ...brew tap caskroom/versions
przed uruchomieniem polecenia instalacjiWeź beczkę
Zainstaluj java7:
(Miałem trudności ze znalezieniem linku do pobrania java7 w witrynie oracle, ponieważ „polecają” java8)
EDYCJA styczeń 2018 (jak wskazał Ankur ):
Użyj beczki zulu7 . Zulu to certyfikowana kompilacja OpenJDK wyprodukowana przez Azul Systems, która powinna istnieć przez długi czas (wciąż oferują nawet kompilacje JDK6).
źródło
Wiem, że niektórzy mogą chcieć mnie uderzyć za ponowne otwarcie starego postu, ale jeśli tak uważasz, zrób to, mam tylko nadzieję, że może to pomóc komuś innemu w próbie ustawienia JDK 7 na Mac OS (używając IntelliJ).
To, co zrobiłem, aby to działało na moim komputerze, to:
źródło
Możliwe, że nadal musisz dodać JDK do Eclipse (STS). To, że pakiet JDK jest w systemie, nie oznacza, że Eclipse wie, gdzie go znaleźć.
Przejdź do opcji Preferencje> Java> Zainstalowane środowiska JRE
Jeśli nie ma wpisu dla JDK 1.7, dodaj go. Będziesz musiał wskazać Eclipse miejsce, w którym zainstalowałeś swój 1.7 JDK.
Jeśli Eclipse nie może znaleźć środowiska JRE zgodnego z 1.7, domyślam się, że używa on tylko domyślnego środowiska JRE, a to prawdopodobnie nadal wskazuje na Javę 1.6, co powodowałoby powstawanie czerwonych falistych linii.
źródło
po zainstalowaniu 1.7jdk z oracle zmieniłem moje skrypty bash, dodając:
a następnie uruchomienie
java -version
pokazało właściwą wersję.źródło
A co z Netbeans, oto artykuł, jak skonfigurować go z NB7:
http://netbeanside61.blogspot.com/2011/06/downloading-openjdk7-binary-for-mac-os.html
Może podobne kroki dla Eclipse.
źródło
Od 27 kwietnia dostępna jest oficjalna wersja oprogramowania Oracle Java SE 7u4. Pobierz obraz dysku i uruchom instalator - a następnie zobacz plik Readme dla komputerów Mac .
źródło
Od grudnia 2017 r. Wcześniej opublikowane linki nie działają, ale JDK 7 można nadal pobrać z archiwów Oracle (wymagane logowanie):
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html
źródło
Instrukcje peter_budo działały idealnie. Musiałem dodać słoiki w / Library / Java / JavaVirtualMachines / JDK 1.7.0 Developer Preview.jdk / Contents / Home / jre / lib / do moich bibliotek projektów IntelliJ. Teraz działa jak urok. Zauważ, że nie potrzebowałem mojego IDE do działania pod 1.7; raczej musiałem być w stanie skompilować i uruchomić wersję 1.7. Najprawdopodobniej będę nadal używać środowiska JRE firmy Apple do uruchamiania IDE, ponieważ jest prawdopodobnie bardziej stabilne pod względem procedur graficznych (Swing, AWT). Podobnie jak OP, bardzo chciałem przetestować nowe API NIO2. Jak dotąd wygląda dobrze. Dzięki, Peter.
źródło
To, co zadziałało dla mnie w Lion, to instalacja JDK7_u17 z Oracle, a następnie edycja ~ / .bash_profile, aby uwzględnić: eksport JAVA_HOME = / Library / Java / JavaVirtualMachines / jdk1.7.0_13.jdk / Contents / Home
źródło
Zaktualizowałem do Yosemite, a Android Studio nie wyczyścił moich projektów ani nie uruchomił ich na urządzeniu wirtualnym lub rzeczywistym z powodu następującego błędu:
Po kilku badaniach i rozwiązywaniu problemów stwierdziłem, że pliku JDK wskazywanego w „/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home” nie ma; brakowało wszystkich elementów „JavaVirtualMachines / 1.6.0.jdk / Contents / Home” w „/ System / Library / Java”. Więc skopiowałem „JavaVirtualMachines / 1.6.0.jdk / Contents / Home” z „/ Library / Java /” do „/ System / Library / Java /” i cha ching! Wróciłem do biznesu.
źródło
Teraz użyj polecenia
Aktualizacja 2020: 04
Aby zainstalować Java7 z uruchomionym homebrew:
Mam nadzieję, że to pomoże.
źródło