Không thể chuyển đổi sang định dạng Dalvik: Không thể thực thi dex: Java heap space


79

Tôi đã thêm tệp jar 2,45mb vào dự án Android eclipse của mình và bây giờ tôi tiếp tục nhận được "Chuyển đổi sang định dạng Dalvik không thành công: Không thể thực thi dex: Java heap space" bất kể tôi làm gì.

Tôi đã nghiên cứu trực tuyến và được thông báo cập nhật eclipse.ini để tăng kích thước máy ảo Java của tôi. Tôi đã thực hiện việc này cho tất cả các giá trị trong eclipse.ini và tôi tiếp tục gặp lỗi bản dựng.

Có ý kiến ​​gì không?


Bạn có thể vui lòng đăng những dòng mà bạn đã thêm vào nhật thực không?
CRM

-startup plugins / org.eclipse.equinox.launcher_1.1.0.v20100507.jar --launcher.library plugins / org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810 -product org.eclipse.epp.package .java.product --launcher.defaultAction openfile --launcher.XXMaxPermSize 512M -showsplash org.eclipse.platform --launcher.XXMaxPermSize 512M --launcher.defaultAction openfile -vmargs -Dosgi.requiredJavaVersion = 1,5 -Xms512m -Xmx512m
AndroidPlaya

Tôi cũng chỉ có các mục nhập -data @noDefault trong init của mình: Tôi đã thử thêm nhiều mã khác nhau bao gồm -Xms512m -Xmx512m và -vmargs -Xms512m -Xmx512m trong các hoán vị khác nhau với hai dòng này. cũng có những đề xuất để thêm khoảng 20 dòng mã nữa mà tôi cũng đã thử. ai đó cần đăng các dòng mã HOÀN THÀNH cần thiết trong exclipse.ini, từ trên xuống dưới và liệu có phải tùy chỉnh bất kỳ đường dẫn tệp nào trong mã đã thêm hay không, điều này sẽ khác nhau đối với các cấu hình khác nhau
Androidcoder

Tôi cũng đã cố gắng tung ra từ dòng lệnh với nhật thực -vmargs -Xms512m -Xmx512m đó đã không làm việc
Androidcoder

Câu trả lời:


209

Sửa đổi -XmsAm-XmxBmparemeters trong eclipse.iniđể họ có đủ lớn. Mặc định là -Xms40m -Xmx384m. Hãy thử thay đổi cả hai thành -Xms512m -Xmx512mvà khởi động lại nhật thực để xem điều đó có hữu ích không. Nếu không, hãy tiếp tục tăng giá trị và khởi động lại nhật thực cho đến khi một trong hai điều xảy ra:

  1. Quá trình xây dựng của bạn đã hoàn thành.
  2. Eclipse sẽ không khởi động lại vì bạn không có đủ bộ nhớ.

eclipse.iniđược đặt tại /etc/eclipse.iniUbuntu (giả sử bạn đã cài đặt Eclipse từ kho lưu trữ Ubuntu).

Đối với MAC, vui lòng xem:

Việc tìm kiếm eclipse.ini hơi khó. Để định vị nó, nhấp chuột phải vào biểu tượng Ứng dụng Eclipse và chọn "Hiển thị Nội dung Gói", sau đó nhấp đúp vào thư mục "Nội dung" và sau đó nhấp đúp vào thư mục "MacOS", trang chủ của eclipse.ini

https://confluence.sakaiproject.org/pages/viewpage.action?pageId=61341742


8
Trang này mô tả cách tìm eclipse.ini trên mac.
JohnnyLambada

7
Trong Windows, nó nằm ngay bên cạnh eclipse.exe, bất cứ nơi nào bạn đặt nó.
Cheezmeister 13/10/12

1
Các mục duy nhất tôi có là -data @noDefault hãy tư vấn
Roy Hinkley

@JohnnyLambada Xin chào Johny Tôi đã thêm Tệp jar 7mb và đã sửa đổi biến xms thành 1024m cả hai. Nhưng Bây giờ tôi nhận được lỗi chuyển đổi này sang định dạng Dalvik thất bại với lỗi 1
Gaurav Arora

1
Cờ Xmx chỉ định nhóm cấp phát bộ nhớ tối đa cho Máy ảo Java (JVM), trong khi Xms chỉ định nhóm cấp phát bộ nhớ ban đầu theo câu trả lời SO này.
JohnnyLambada

20

Đôi khi việc kiểm tra thư viện .jar trong thuộc tính dự án cũng gây ra sự cố này. Trong trường hợp đó, hãy thử những cách sau:

Right click your project. 
Go to Properties -> Java Build Path -> Order and Export.
Uncheck the check box against your included library. 
Press OK and run the project.

Khi thực hiện việc này, Eclipse sẽ chỉ lấy các lớp cần thiết trong mã, từ jar thay vì lưu trữ tất cả các lớp từ jar.


5
Bỏ chọn thư viện từ 'Đặt hàng và Xuất' dẫn đến 'ClassNotFoundException' được ném khi một lớp từ thư viện đó được truy cập từ mã. (Các) thư viện sẽ được xuất.
Vaishak Nair

Có Đúng vậy, tôi đang nhận được Lỗi Java Heap, khi tôi không đánh dấu tất cả các thư viện, nó thực thi nhưng ứng dụng bị rơi trên thiết bị, xin vui lòng giúp đỡ tôi ..
AK Joshi

0

Tất cả các câu trả lời trên đều hoàn hảo, nhưng bạn có thể thử thêm một điều nữa, nhanh chóng và dễ dàng, đóng tất cả các dự án mở không cần thiết của bạn trong không gian làm việc Eclipse và sau đó Khởi động lại Eclipse.

Bạn cũng có thể tăng paremeters -XmsAm và -XmxBm trong eclipse.ini.


Tôi cũng gặp phải vấn đề tương tự, tôi cũng đã thử, kích thước bộ nhớ thay đổi. Nhưng vấn đề không được giải quyết. Cuối cùng, tôi đã làm, Project Explorer -> nhấp chuột phải -> Maven -> cập nhật dự án. Vấn đề của tôi đã được giải quyết. Sau khi tôi thực hiện thanh toán mới nhất, tôi nên cập nhật Maven. Nhưng tôi đã nhầm.
nhật

@Ravi làm thế nào để bạn giải quyết lỗi, cho tôi biết luôn.
Sandeep Londhe

0

Đi tới thuộc tính dự án của bạn và xóa các thư viện đã thêm của bạn khỏi Java Build Path, nhấn ok, sau đó thêm lại chúng. Tôi cũng phải đối mặt với vấn đề này. Bằng cách làm này, tôi đã giải quyết được vấn đề này.


Điều này thực sự làm việc cho tôi với nhật thực ADT @AndroidHacker
noman404

-1

Bổ sung quan trọng:

Giải pháp không hoạt động trên Windows của tôi (có thể là vấn đề cấp phát bộ nhớ), nhưng đã hoạt động tốt trên Linux trên cùng một máy. Vì vậy, cài đặt một hệ điều hành khác sẽ giúp bạn hoặc cài đặt lại Windows.


Chỉ cần cài đặt lại Hệ điều hành của tôi .. không hoạt động. Cũng thay thế bo mạch chủ của tôi để đề phòng và mua một đĩa cứng mới, điều đó cũng không hoạt động.
Kapitein Witbaard
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.