Một số người dùng gặp phải lỗi Không thể tạo máy ảo Java lỗi khi cố khởi chạy ứng dụng đang sử dụng Java. Sự cố cụ thể này được báo cáo là xảy ra với Minecraft và một số ứng dụng khác được xây dựng xung quanh Java.
Điều gì gây ra lỗi Không thể tạo Máy ảo Java?
Chúng tôi đã điều tra vấn đề cụ thể này bằng cách xem xét các báo cáo người dùng khác nhau và các chiến lược khắc phục sự cố mà họ đã sử dụng để giải quyết cùng một thông báo lỗi. Dựa trên kết luận của họ, có một số tình huống sẽ gây ra vấn đề cụ thể này:
- Java được gọi bởi các đối số hoặc tùy chọn sai - Điều này có thể xảy ra nếu bạn đang chạy một ứng dụng tự sản xuất hoặc bạn đang cố mở một ứng dụng mã nguồn mở được xác định là nguyên nhân gây ra sự mất ổn định của hệ thống.
- Bộ nhớ heap tối đa toàn cầu của Java không đủ cao - Một trong những nguyên nhân phổ biến nhất khiến bạn có thể gặp phải lỗi cụ thể này là nếu bạn cố gắng khởi động ứng dụng Java với kích thước bộ nhớ heap tối đa lớn hơn kích thước bộ nhớ được đặt là Biến hệ thống .
- Ứng dụng và / hoặc thực thi Java yêu cầu đặc quyền quản trị - Điều này có thể xảy ra với các ứng dụng cần quyền truy cập của quản trị viên để hoạt động bình thường.
Nếu bạn hiện đang tìm cách giải quyết lỗi Không thể tạo máy ảo Java lỗi, bài viết này sẽ cung cấp cho bạn một số chiến lược khắc phục sự cố đã được xác minh. Dưới đây, bạn có một bộ sưu tập các phương pháp mà những người dùng khác trong tình huống tương tự đã sử dụng để giải quyết vấn đề.
Để đảm bảo kết quả tốt nhất, hãy làm theo các phương pháp bên dưới theo thứ tự được trình bày cho đến khi bạn phát hiện ra phương pháp hiệu quả trong việc giải quyết lỗi cho trường hợp cụ thể của bạn.
Phương pháp 1:Thêm _JAVA_OPTIONS vào các biến hệ thống
Hầu hết người dùng bị ảnh hưởng đã tìm cách khắc phục sự cố bằng cách tạo Biến hệ thống cho Java có tên _JAVA_OPTIONS và đặt giá trị của nó thành Xmx512M . Về cơ bản, điều này thực hiện là nó đặt kích thước bộ nhớ heap tối đa toàn cầu cho Java.
Điều này sẽ giải quyết bất kỳ thông báo lỗi nào xảy ra vì kích thước bộ nhớ heap tối đa của ứng dụng Java đã khởi động lớn hơn kích thước được đặt làm Biến hệ thống. Một số người dùng gặp phải vấn đề tương tự đã báo cáo rằng vấn đề đã được giải quyết hoàn toàn sau khi họ thực hiện các bước bên dưới.
Đây là những gì bạn cần làm để thêm _JAVA_OPTION Mục nhập S trong Biến hệ thống để phóng to kích thước bộ nhớ heap tối đa toàn cầu:
- Nhấn phím Windows + R để mở Chạy hộp thoại. Sau đó, nhập “ sysdm.cpl ”Và nhấn Enter để mở Thuộc tính hệ thống màn hình.
- Bên trong Thuộc tính hệ thống , đi tới Nâng cao và nhấp vào Biến môi trường.
- Trong Biến môi trường cửa sổ s, nhấp vào Mới (trong Biến hệ thống ).
- Bên trong Biến hệ thống mới cửa sổ, đặt Tên biến tới _JAVA_OPTIONS và Giá trị biến tới - Xmx512M và nhấp vào Ok để lưu các thay đổi.
- Đóng các cửa sổ đã mở trước đó và khởi động lại máy của bạn để thực thi các thay đổi.
- Ở lần khởi động tiếp theo, hãy mở ứng dụng trước đó đã hiển thị cho bạn thông báo Không thể tạo máy ảo Java và xem liệu bây giờ có hoạt động bình thường hay không.
Nếu bạn vẫn thấy thông báo lỗi tương tự khi khởi động ứng dụng, hãy thử thêm đường dẫn Thùng rác Java có thể tương tự như “% \ USER PATH \ Java \ jdk1.6.0_39 \ bin” vào biến môi trường như được chỉ ra trong phương pháp trên và xem điều đó có hoạt động không.
Phương pháp 2:Mở java.exe bằng quyền quản trị viên
Một số người dùng đang vật lộn để giải quyết vấn đề tương tự đã cố gắng giải quyết vấn đề sau khi buộc tệp thực thi Java chính (java.exe) mở bằng các đặc quyền quản trị.
Một số người dùng đã báo cáo rằng họ có thể giải quyết sự cố sau khi áp dụng bản sửa lỗi này trên cả tệp thực thi java chính và tệp thực thi của ứng dụng đang hiển thị thông báo lỗi.
Dưới đây là hướng dẫn nhanh về toàn bộ:
- Mở File Explorer và điều hướng đến vị trí cài đặt java của bạn. Chúng tôi sẽ cần đến vị trí của tệp thực thi Java chính ( java.exe ). Theo mặc định, bạn sẽ tìm thấy nó trong Program Files / Java / * JRE build version * / bin. Vị trí chính xác sẽ khác nhau tùy thuộc vào Môi trường thời gian chạy Java mà bạn đang sử dụng.
Lưu ý: Nếu bạn đã cài đặt Java ở một vị trí tùy chỉnh, hãy điều hướng đến vị trí tùy chỉnh đó.
- Nhấp chuột phải vào java.exe và chọn Thuộc tính . Sau đó, chuyển đến Khả năng tương thích và chọn hộp được liên kết với Chạy chương trình này với tư cách quản trị viên (trong Cài đặt). Nhấp vào Áp dụng để lưu các thay đổi.
- Nhấp chuột phải vào tệp thực thi ứng dụng (ứng dụng đang gây ra lỗi) và lặp lại quy trình tương tự: Khả năng tương thích> Chạy chương trình này với tư cách quản trị viên> Áp dụng .
- Chạy ứng dụng và xem thông báo lỗi có được giải quyết hay không.
Phương pháp 3:Cài đặt lại Java
Trong một số trường hợp, lỗi được kích hoạt bởi vì Java có thể không được cài đặt đúng cách hoặc cài đặt của nó có thể đã bị hỏng theo thời gian. Do đó, trong bước này, chúng tôi sẽ cài đặt lại Java sau khi gỡ cài đặt hoàn toàn. Vì điều đó:
- Nhấn phím Windows + R để mở lời nhắc Run và nhập “Appwiz.cpl”.
- Nhấn “Enter” và màn hình Chương trình và Tính năng sẽ mở ra.
- Tại Chương trình và Tính năng , cuộn qua danh sách ứng dụng đã cài đặt cho đến khi bạn tìm thấy Java.
- Nhấp chuột phải vào nó và chọn “Gỡ cài đặt” để xóa hoàn toàn khỏi hệ thống
- Trước tiên, hãy xóa cài đặt Java chính và sau đó, bạn cũng nên xóa tất cả các cài đặt Java khác, chẳng hạn như các bản cập nhật và các phiên bản khác.
- Sau khi gỡ bỏ tất cả cài đặt, hãy khởi động lại máy tính của bạn.
- Sau khi khởi động, hãy truy cập liên kết này và tải xuống phiên bản JRE mới nhất.
- Kiểm tra xem sự cố vẫn tiếp diễn.
- Nếu lỗi vẫn còn, hãy tải xuống và cài đặt phiên bản JDK mới nhất từ đây.
Lưu ý: Nếu bạn đang sử dụng JDK, hãy thử thay đổi các phiên bản của nó hoặc gỡ cài đặt JRE đã được cài đặt cùng với nó. - Xác minh xem sự cố vẫn còn tồn tại hay không.
Phương pháp 4:Sửa lỗi bằng mã
Có những lý do khác nhau đằng sau lỗi này và một số lý do trong số đó bao gồm nếu bạn có một số lỗi cụ thể với mã của mình. Chúng tôi sẽ làm nổi bật một số bên dưới.
- Xóa dấu gạch nối :Một số người dùng lưu ý rằng lỗi đã được khắc phục bằng cách thay đổi dấu gạch ngang kép “-” thành dấu gạch ngang duy nhất “-” trong mã của họ. Ví dụ:
Thay đổi mã
“sony @ sony-VPCEH25EN:~ $ java –version
Đã chọn JAVA_TOOL_OPTIONS:-javaagent:/usr/share/java/jayatanaag.jar
Tùy chọn không được công nhận:–version
Lỗi:Không thể tạo Máy ảo Java.
Lỗi:Một ngoại lệ chết người đã xảy ra. Chương trình sẽ thoát. ”
Tới
“ sony @ sony-VPCEH25EN:~ $ java -version
Đã chọn JAVA_TOOL_OPTIONS:-javaagent:/usr/share/java/jayatanaag.jar
Tùy chọn không được công nhận:–version
Lỗi:Không thể tạo Máy ảo Java.
Lỗi:Một ngoại lệ chết người đã xảy ra. Chương trình sẽ thoát. ” - Ngoài ra, hãy thử xóa dòng sau khỏi đối số của bạn
-Djava.endorsed.dirs =”C:\ Program Files \ Apache Software Foundation \ Tomcat 8.5 \ endorsed” - Mở tệp eclipse.ini của bạn và đảm bảo rằng bạn thêm mục nhập “-vm” phía trên vm args, nếu không, JVM V6 sẽ được chọn trong env vars.
- Nếu trên Ubuntu, bạn nên biết rằng Java 8 là phiên bản duy nhất được hỗ trợ. Do đó, sử dụng phương pháp thứ ba. Gỡ cài đặt Java và cài đặt phiên bản trước.
Phương pháp 5:Chỉnh sửa tệp Eclipse.ini
Chúng tôi cũng có thể tinh chỉnh những thứ bên trong Tệp Eclipes.ini để loại bỏ vấn đề này. Do đó, có thể có một số vấn đề với cấu hình của nó cần được giải quyết, chúng tôi đã chia nó thành các vấn đề riêng biệt. Hãy làm theo cách phù hợp nhất với tình huống của bạn.
Giảm mức sử dụng bộ nhớ
- Mở tệp Eclipse.ini bên trong thư mục Eclipse bằng notepad.
- Tìm đường tương tự như “-Xmx256m” (Nó có thể là -Xmx1024m hoặc -Xmx 512m).
- Bây giờ, hãy thay đổi giá trị mặc định thành một con số hợp lý hơn tùy thuộc vào RAM được cài đặt trên máy tính của bạn và thêm cả số phiên bản vào đó. Ví dụ:
-Xmx512m -Dosgi.requiredJavaVersion=1.6 OR -Xmx512m -Dosgi.requiredJavaVersion=1.7 OR -Xmx512m -Dosgi.requiredJavaVersion=1.8
- Ngoài ra, hãy thử xóa giá trị “256m” khỏi dòng “-launcher.XXMaxPermSize”.
- Kiểm tra xem sự cố vẫn tiếp diễn.
Tìm hiểu xung quanh
- Cố gắng xóa các dòng sau khỏi tệp của bạn.
-vm P:\Programs\jdk1.6\bin
- Ngoài ra, hãy thay đổi các dòng sau.
set -Dosgi.requiredJavaVersion=1.5 TO set -Dosgi.requiredJavaVersion=1.6
- Ngoài ra, hãy thử thêm dòng sau bên trên “-vmargs!” dòng.
-vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
- Ngoài ra, hãy trỏ tới JVM.dll bằng dòng sau.
-vm C:\Program Files\Java\jre7\bin\client\jvm.dll
- Mở tệp Eclipse và thay thế “-vmargs” bằng đường dẫn của javaw.exe. Ví dụ:
-startup plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813 -product com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256M -showsplash com.android.ide.eclipse.adt.package.product --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile **-vm “c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe”** -Dosgi.requiredJavaVersion=1.6 -Xms40m -Xmx768m -Declipse.buildId=v21.1.0-569685
- Ngoài ra, bạn có thể đặt dòng sau ở cuối và kiểm tra xem dòng đó có hoạt động không.
-vmargs -Xms40m -Xmx512m -XX:MaxPermSize=256m
- Hơn nữa, hãy thử xóa các dòng sau khỏi eclipse.ini và kiểm tra xem điều đó có hoạt động không.
-XX:+UseStringDeduplication -XX:+UseG1GC
- Bạn cũng có thể thử xóa tệp eclipse.ini nếu sự cố vẫn tiếp diễn vì điều đó đã được báo cáo là đã khắc phục sự cố cho một số người nhưng hãy nhớ sao lưu tệp trước trong trường hợp bạn cần. Ngoài ra, hãy thử đóng tất cả các ứng dụng ngốn điện trước khi khởi động Java để đảm bảo có các tài nguyên thích hợp.
Kiểm tra Tham nhũng JDK
- Nhấn “Windows” + “R” để mở lời nhắc Run và nhập “cmd”.
- Nhập lệnh sau và kiểm tra xem có lỗi không.
c:\> java -version
- Nếu nó xuất hiện lỗi, hãy cài đặt lại JDK hoàn toàn.