2016-09-21 14 views
28

Tôi có phiên bản Android Studio mới nhất (kể từ ngày 21 tháng 9 năm 2016). Khi tôi tạo một dự án hoàn toàn mới trong Android Studio và cố gắng xây dựng nó, tôi nhận được build này lỗi:Cách sửa lỗi com.android.builder.internal.aapt.AaptException: Không thể thu thập tệp tin?

Error: com.android.builder.internal.aapt.AaptException: Failed to crunch file H:..pathTo..\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\24.2.1\res\drawable-xhdpi-v4\abc_list_selector_disabled_holo_light.9.png

vào

H:..pathTo..\app\build\intermediates\res\merged\debug\drawable-xhdpi-v4\abc_list_selector_disabled_holo_light.9.png

này có ý nghĩa gì? Và làm thế nào để sửa nó?

Build log: https://jpst.it/NCnu

+1

Tôi gặp vấn đề tương tự, đây là giải pháp tốt hơn [http://stackoverflow.com/a/34680168/5253418](http://stackoverflow.com/a/34680168/5253418) – Blaken

Trả lời

72

tuyệt vời. Đó là năm 2016 và chuỗi công cụ của Google vẫn có những hạn chế về đường dẫn tệp gây phiền nhiễu.

Error: File path too long on windows, keep below 240 characters

Di chuyển dự án thêm đường dẫn tệp dự án của bạn và sự cố biến mất!

+0

Hệ điều hành khác có vấn đề này ? Chỉ với NTFS và các hệ thống tệp khác có vấn đề này không? – mahen23

+0

Tôi không biết. Có thể – user1884325

+0

Lỗi có vẻ quá tối nghĩa, tôi gần như không google. Đồng ý, không thể tin rằng vấn đề này vẫn tồn tại. Bạn là một phao cứu sinh. –

9

Có một giải pháp thay thế. Nếu bạn thêm phần sau vào tệp build.gradle của dự án, bên trong phần allprojects, nó sẽ di chuyển tệp Kết quả xây dựng vào thư mục này. Có nghĩa là ứng dụng bây giờ sẽ xây dựng .:

buildDir = "C:/tmp/${rootProject.name}/${project.name}" 

Nó cung cấp cho bạn một module ứng dụng bổ sung tại thư mục gốc của dự án nhưng đây là một lựa chọn thuận tiện hơn nhiều so với di chuyển toàn bộ đường dẫn thư mục dự án.

+2

Tôi đã sử dụng biến thể: 'if (System.properties ['os.name']. ToLowerCase() .contains ('windows')) { def systemDrive = System.getenv ("SystemDrive") buildDir = "$ {systemDrive}/tmp/$ {rootProject.name}/$ {project.name}" } ' nên lành tính trên các máy không phải Windows và OK khi ổ đĩa chính không phải là C :. (Nếu tôi có thể tìm ra cách định dạng đúng cách này, tôi sẽ hạnh phúc hơn!) – johnfo

1

Tôi tìm thấy cùng một lỗi (Lỗi: com.android.builder.internal.aapt.AaptException: Không thể bẻ khóa). Tôi đã sao chép thư mục một cấp ở trên. Nó hoạt động!

1

Các giải pháp mà giúp tôi là để xóa node_modules thư mục, loại bỏ nền tảng Android bằng cách chạy lệnh ionic platform remove android và sau đó đi trên thư mục dự án trong hệ thống hirarchy và sau đó:

npm install 
ionic platform add android 
ionic run android 
0

tôi phải đối mặt với vấn đề này khi cố gắng tạo một apk chưa ký bằng Gradle trong Android Studio IDE 3.0

Tôi đã giải quyết nó bằng cách tạo một dự án mới và sao chép từng tệp có sửa đổi nhỏ cần thiết thay đổi tên gói, nhưng tôi để lại các biểu tượng vì chúng tôi đã không thêm một biểu tượng mới trong một số tệp như tôi đã làm trong dự án trước đó.

Và sự cố đã được giải quyết, nó được xây dựng mà không có lỗi như vậy. (Tuy nhiên, tập tin apk đã tạo không được tìm thấy trong app \ build \ output \ apk nhưng bên trong app \ build \ output \ apk \ debug, nhưng đó là một vấn đề khác không quan trọng như vậy).

0

Tôi gặp lỗi tương tự. Chỉ cần cố gắng giảm độ dài đường dẫn bằng cách di chuyển thư mục dự án lên. Điều này chắc chắn sẽ giải quyết được vấn đề.

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