2012-01-24 12 views
6

Używam środowiska Eclipse w środowiskach, które uważałem za 64-bitowe środowiska wykonawcze. Bieżące ustawienia Java> zainstalowane środowiska JRE i Środowisko wykonawcze wskazują na jdk1.6.0_30, która jest 64-bitową wersją JDK. Jednak zaćmienie wciąż uważa, że ​​to działa w wersji 32-bitowej, ponieważ podczas uruchamiania:Jak zmienić konfigurację środowiska Eclipse na 64-bitową maszynę JVM

System.getProperty („sun.arch.data.model”);

zwraca 32 zamiast 64.

i zewnętrznym zasobem JNI że skompilowany dla 64-bitowych maszynach nie będzie link do udostępnionego pliku .so chyba że to działa w 64-bitowym środowisku. (Otrzymuję błędy niedopasowania rozmiarów słowa, gdy próbuję to zrobić)

Jak mogę ponownie skonfigurować zaćmienie, aby uruchomić 64-bitowe jvm. Czy samo Eclipse musi być wersją 64-bitową?

: Linux

Edit: Próbowałem propozycje każdego z nas i nic nie działa. Zmieniono wykonanie i zmienne środowiskowe wskazujące na najnowszy JDK jaki mam, który wynosi 1,6_30. kiedy uruchamiam program z wiersza poleceń, otrzymuję 64 i amd64 jako wartość, gdy uruchamiam ten sam program w eklize, otrzymuję 32 i i386. Coś jest nie tak podczas zaćmienia, które powoduje, że próbuje go uruchomić na 32-bitowej maszynie JVM. kiedy próbuję java -d32 -wersja mówi, że środowisko 32-bitowe nie jest zainstalowane, ale Eclipse tego nie wie. Zmodyfikowałem plik Eclipse.ini i nadal nic nie działa. Ponownie uruchomiłem zaćmienie po tych zmianach ... nic. Czy ktoś, kto dobrze zna zaćmienie, może mi pomóc? dzięki

+0

Czy na pewno '" sun.arch.data.model' daje architekturę JVM i nie OS architektura Jestem trochę niejasne w tej koncepcji – RanRag

+0

To.. Nie jestem pewien. Mam to z innego wątku przepełnienia stosu.ale sprawdzi to jeszcze raz. – Randnum

+0

Czy używasz 64-bitowej wersji Eclipse? Jestem prawie pewien, że Eclipse wybierze właściwą maszynę JVM w oparciu o jej wersję, a ponieważ Eclipse dostarcza JNI, nie można mieszać 32-bitowych i 64-bitowych instalacji Eclipse/JVM. –

Odpowiedz

3

Dodaj znacznik -vm do pliku eclipse.ini lub skrót umożliwiający jawne określenie środowiska JRE. Zauważ, że domyślne dla systemu Windows XP jest użycie środowiska CRAPPY JRE dostarczanego z systemem Windows.

-vm "%JAVA_HOME%/bin/javaw.exe"

+0

próbował tego ..... – Randnum

+0

Należy zauważyć, że format w pliku eclipse.ini ma mieć -vm w jednej linii i wartość w następnym .. Nie jestem pewien dlaczego. –

+0

Tak, zrobiłem to poprawnie. faktycznie rozpoznaje nową lokalizację, którą umieściłem, ale z jakiegoś powodu nadal jest w trybie 32-bitowym, mimo że JDK/JRE uznaje to za poprawne. To tak, jakby była flaga, którą muszę zmienić gdzieś – Randnum

0

Dla mnie działa poprawnie! . Upewnij się, że twoja ścieżka to c: \ Program Plik nie c: \ Programuj plik (X86) (jeśli zainstalowałeś 64-bitowy plik JDK powinien on przechowywać w c: \ Program Files)

+0

Jestem teraz na Linuksie. – Randnum

+0

Przepraszam, nie mam pojęcia o Linuksie. – invariant

0

konfiguracja Eclipse jest wyjaśnione here

+0

Zmodyfikowałem ini i nie zadziałało. W dalszym ciągu pokazuje 32-bitową wersję na i386. – Randnum

0

z „zainstalowane JRE” (lepsze wykorzystanie pakietów JDK) są wykorzystywane do tworzenia i uruchamiania kodu i może być różnej architekturze lub wersji Java. Maszyna JVM używana do uruchamiania Eclipse jest zdefiniowana w pliku eclipse.ini. Powinieneś użyć wersji dla architektury JVM.

+0

To dziwne, ponieważ nie sądzę, że mój komputer ma 32-bitowy JDK/JRE zainstalowany na komputerze, o ile wiem. Określiłem środowiska wykonawcze wszędzie, w tym w pliku Eclipse.ini i nadal wydaje się, że działa na komputerze 32-bitowym. – Randnum

+0

Jaki smak Linuksa używasz? Niektóre instalują dodatkowe JRE, np. dla OpenOffice. Jak zainstalowałeś środowisko JRE? Czy zmieniłeś środowisko wykonawcze w projekcie? –

+0

Używam Red Hat 5, mam zainstalowane liczne JDK, ale starałem się zmienić ścieżkę klas w Linuksie na najnowszą wersję 1.6. Zmieniłem także wszystkie zmienne środowiskowe i wykonawcze w projekcie. W rzeczywistości nie wiem, że mam 32-bitowy jvm zainstalowany w dowolnym miejscu na moim komputerze. Z jakiegoś powodu Eclipse jest nieuczciwy i mówi, że jest na komputerze i386 i że działa w trybie 32-bitowym. jednak gdy wyjdę poza zaćmienie i zrzędę, on dokładnie to samo polecenie pokazuje poprawne 64 bity i komputer amd64. – Randnum

0

OK. To raczej wywoływał ból głowy, ale uważam, że mam rozwiązanie. Po zmianie pliku eclipse.ini przejdź do właściwości projektu. W ustawieniach Run/Debug edytuj konfigurację uruchamiania dla swojego projektu. Pod znacznikiem JRE kliknij zainstalowane środowiska JRE. Kiedy pojawi się okno dialogowe, kliknij szukaj. Przejdź do swojego folderu z plikami programów, a NIE do x86, i pozwól mu szukać swoich JRE. Po pojawieniu się najnowszego usuń zaznaczenie środowiska JRE, które zostało wybrane i wybierz najnowsze znalezione środowisko JRE. Zmieniłem nazwę na JRE7-64, więc mogłem zidentyfikować różnicę. To rozwiązało problem po mojej stronie. Powodzenia

1

W eclipse.ini dodają:

-Xmx8g 
-d64 
+1

Wyjaśnienie: Parametr '-Xmx8g' mówi Eclipse, że może wykorzystywać do 8 GB pamięci RAM. Ten parametr nie jest naprawdę potrzebny, aby Eclipse używał 64-bitowej maszyny JVM. – Augustin

+0

Wyjaśnienie: '-d64' jest – Sergei

Powiązane problemy