2013-02-07 27 views
8

Tôi đã tạo một dự án thư viện cho ứng dụng của mình. Khi tôi cố gắng thêm thư viện cho một dự án, tôi nhận được lỗi sau khi cố gắng chạy nó:

[2013-02-07 04:51:26 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/actionbarsherlock/R$attr; 
[2013-02-07 04:51:26 - testfromlibrary] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/actionbarsherlock/R$attr; 

Tôi đã thêm thư viện HoloEverywhere vào thư viện của tôi, trong khi tôi đã thêm thư viện ActionBarSherlock để HoloEverywhere. Tôi đang sử dụng Eclipse trên Windows 7.

Mặc dù tôi đã cập nhật SDK lên phiên bản mới nhất, khởi động lại Eclipse và làm sạch các dự án khác nhau, lỗi vẫn tồn tại.

Có ai có ý tưởng nào về cách giải quyết lỗi này không? My bin dir không được bao gồm trong đường dẫn xây dựng theo thuộc tính và tôi đã thử hoàn toàn deleting the bin folder.

Cảm ơn!

Trả lời

5

Tôi đã xác định nguyên nhân lỗi đến/bin/lớp học. Nếu tôi đã xóa thư mục/classes trước khi chạy ứng dụng, ứng dụng sẽ biên dịch và chạy. Tất nhiên, khi tôi đã cố gắng để thực sự xuất khẩu các ứng dụng, thư mục/lớp sẽ trở lại và cùng với nó là lỗi.

Giải pháp cho vấn đề của tôi là cài đặt phiên bản Eclipse mới nhất. Khi tôi xuất hoặc chạy ứng dụng thông qua cài đặt Eclipse mới nhất, thư mục/classes không xuất hiện ngay bây giờ.

+0

Giải pháp cho vấn đề của tôi là tôi đã xóa các tệp jar mà tôi đã sao chép được dán vào thư mục lib của dự án. Tôi đã nhập một cách rõ ràng các jars bên ngoài trong đường dẫn xây dựng. –

1

Tôi đã gặp vấn đề tương tự ngay hôm nay. Tôi đã xóa các tập tin .apk bên trong/bin, dường như sửa chữa nó.

+0

Xin chào @Matthew, cảm ơn câu trả lời. Như đã đề cập ở trên, tôi đã giải quyết vấn đề bằng cách cài đặt phiên bản mới nhất của Eclipse. –

8

Sự cố này xảy ra với tôi khi tạo thư viện kết hợp với bộ đệm hành động. Trong trường hợp này nhật thực tạo R từ sherlock trong thư viện của tôi và trong dự án sử dụng nó.

Giải pháp này sẽ được xóa trong thư mục bin thư viện của bạn chỉ thư mục actionbarsherlock chứa các lớp R. Inst này tạo ra nữa, và chỉ hiện diện trong ứng dụng dự án của bạn.

3

vấn đề đối với tôi là các tệp lớp trùng lặp. tôi đã có cả hai gói chính nó và sdk jar của gói (trong thư mục libs) trong cùng một dự án.

2

Hãy chắc chắn cả hai dự án (thư viện và ứng dụng) không có tên gói cùng (trong AndroidManifest)

18

Tôi thấy rằng nếu tôi đã đi vào bất động sản -> Java Build Path -> Trình tự, xuất khẩu, loại bỏ các thư viện riêng của Android sau đó dự án của tôi được xây dựng tốt. Có một hỗ trợ khác v4 jar trong đó đã được xung đột với sherlocks thanh hành động hỗ trợ thư viện v4

+1

đã làm việc cho tôi. Cảm ơn! – mboy

3

Điều này xảy ra với tôi sau khi tôi thay đổi một dự án android thông thường cho một dự án thư viện để sử dụng nó cho một lên.

Chạy một trong các dự án miễn phí/trả phí sẽ dẫn đến lỗi OP.

Vấn đề còn sót lại trong quá trình biên dịch khi dự án cơ sở là một dự án bình thường chứ không phải dự án thư viện. Chỉ cần dọn dẹp không gian làm việc và xây dựng lại tất cả các dự án. Old rác biên soạn sẽ được gỡ bỏ và tất cả mọi thứ sẽ được biên dịch vào thư viện chính xác. Hãy thử chạy lại dự án đã đưa ra lỗi và mọi thứ sẽ ổn.

0

Xóa tất cả thư viện khỏi Đường dẫn xây dựng và nhập dự án thư viện mà bạn muốn triển khai .. Điều này chỉ hoạt động tốt ..

0

Bạn có thể sử dụng Tattletale

Nó giúp bạn xác định các lớp trùng lặp trong các tập tin JAR của bạn.

Hy vọng điều đó sẽ hữu ích.

0

Đối với Android Studio - tôi đã xóa các mục nhập .jar trùng lặp và đã được giải quyết.

Chi tiết: Tôi có một ứng dụng có thư mục cơ bản/chung và sau đó hai thư mục được thừa hưởng từ đó - phiên bản ứng dụng miễn phí và trả phí. Sự cố này xảy ra khi tôi có thư mục/common và thư mục/free cả hai bao gồm cùng một tệp jar crashlytics trong cấu trúc dự án.

0

Đối với tôi, giải pháp đã xóa từng tệp JAR trong thư mục/thư mục "bin".

0

Nếu dự án của bạn tham chiếu dự án thư viện - hãy kiểm tra xem dự án thư viện có cùng libs mà bạn đang sử dụng trong dự án của mình hay không các phiên bản khác nhau. Sử dụng cùng một phiên bản ở khắp mọi nơi và tất cả nên được ok!

Các vấn đề liên quan