Android yêu cầu trình biên dịch tuân thủ cấp 5.0 hoặc 6.0. Tìm thấy '1.7' thay vào đó. Vui lòng sử dụng Công cụ Android> Sửa thuộc tính dự án


286

Có ai có vấn đề tương tự với điều này không, tôi nhập dự án Android và tôi gặp lỗi như

[2011-10-03 17:20:09 - Screen] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:55 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.
[2011-10-03 17:21:59 - App] Android requires compiler compliance level 5.0 or 6.0. Found '1.7' instead. Please use Android Tools > Fix Project Properties.

Tôi có lỗi để xóa tất cả các chức năng @Override ở trên. Tôi có Windows 7 x64, jvm7 x64. Có ai có manh mối gì không? (Tôi đã thực hiện Công cụ Android -> Sửa thuộc tính dự án nhưng không giúp được)


Bạn đã kiểm tra cài đặt tuân thủ trình biên dịch của Eclipse cho dự án chưa? Ví dụ
dmon

3
Có vẻ như Android SDK không nhận ra 1.7 là Java7 (sau đó tương thích với những gì nó cần). Hãy thử thiết lập khả năng tương thích của dự án với Java6 :)
helios

Câu trả lời:


448

Đó không phải là vấn đề, Jack. Android SDK không phải là x64, nhưng hoạt động tốt với x64 jvm (và IDE nhật thực x64).

Như helios đã nói, bạn phải đặt khả năng tương thích dự án với Java 5.0 hoặc Java 6.0.

Để làm điều đó, 2 tùy chọn:

  1. Nhấp chuột phải vào dự án của bạn và chọn "Android Tools -> Fix Project Properties"(nếu điều này không hoạt động, hãy thử tùy chọn thứ hai)
  2. Nhấp chuột phải vào dự án của bạn và chọn "Properties -> Java Compiler", chọn "Bật cài đặt cụ thể của dự án" và chọn 1.5 hoặc 1.6 từ hộp chọn "Cài đặt tuân thủ trình biên dịch" .

26
Không giúp tôi :-(
lzap

1
Trong trường hợp của tôi (tôi đang cố gắng biên dịch mẫu OpenFeint Android), vô hiệu hóa "Bật cài đặt cụ thể của dự án" đã hoạt động thay thế.
dùng642252

1
Khi tôi sử dụng tùy chọn thứ 1, R.java của dự án sẽ tự động bị xóa
Naresh Sharma

Không sử dụng tùy chọn thứ nhất vì nó sẽ đặt trình biên dịch thành 1,5, không đủ "tốt" trong hầu hết các trường hợp. Cách tiếp cận tốt nhất là thay đổi mức độ tuân thủ Trình biên dịch cho toàn bộ không gian làm việc bằng cách đi tới Công cụ -> Tùy chọn -> Trình biên dịch Java và chọn 1.6 từ danh sách thả xuống.
nikib3ro

3
Nhưng nếu bạn muốn Compiler 1.7 mà vẫn gặp lỗi này thì sao? Làm thế nào bạn có thể sửa nó?
Shervin Asgari

20
  1. Chuyển đến thư mục dự án và nhấp chuột phải vào nó - đánh > properties ->dấu vào ô chỉ đọc và nhấp vào ok

  2. Nhấp chuột phải vào dự án của bạn và chọn "Android Tools -> Fix Project Properties"

  3. Nhấp chuột phải vào dự án của bạn và chọn "Properties -> Java Compiler", kiểm tra "Enable project specific settings"và chọn 1.5 hoặc 1.6 từ hộp chọn "Cài đặt tuân thủ trình biên dịch". (thử tất cả các cấp một trong trường hợp này)

  4. Bên dưới Window -> Preferences -> Java -> Compiler, đặt mức tuân thủ Trình biên dịch thành 1.6 hoặc 1.5.

Hy vọng nó sẽ giải quyết vấn đề.


Có thể đã trả lời, nhưng trong hệ thống tệp Windows (vị trí thư mục của dự án của bạn), nhấp chuột phải và đặt hộp kiểm 'chỉ đọc' thành không được chọn. Điều này đã khắc phục vấn đề của tôi!
CodeMonkey

13

Tôi khuyên bạn nên sử dụng phiên bản x86 của jvm. Khi tôi lần đầu tiên nhận được máy tính xách tay mới của mình (x64), tôi muốn đi x64 mọi cách (jvm, jdk, jre, nhật thực, v.v.). Nhưng một khi tôi hoàn thành việc thiết lập mọi thứ, tôi nhận ra rằng SDK Android không phải là x64, vì vậy tôi gặp vấn đề. Quay trở lại x86 jvm và bạn sẽ ổn thôi.

EDIT: 14/11/13

Tôi đã thấy một số hoạt động gần đây và hình dung rằng tôi sẽ giải thích thêm một chút.

Tôi không nói rằng nó sẽ không hoạt động với x64, tôi chỉ khuyên dùng x86.

Đây là một bài viết tốt về những lợi thế / bất lợi của x64 JDK. Lợi ích của nền tảng Java 64 bit

Quá trình suy nghĩ: Để kết thúc? Tại sao tôi lại cố gắng sử dụng JDK 64 bit? Chỉ vì tôi có hệ điều hành 64 bit? Tôi có cần bất kỳ tính năng nào của JDK 64 bit không? Có bất kỳ tính năng bổ sung nào trong JDK 64 bit không?! Tại sao s *** này không chơi tốt với nhau!? F *** nó tôi sẽ đi 32-bit.


8

Làm Project-> Clean...sửa nó cho tôi.

Nhật thực của tôi đã ngừng hoạt động nên tôi đã dọn dẹp workspacethư mục và sau khi tôi chạy nhật thực khi tôi nhập dự án, tôi gặp vấn đề này. Các giải pháp khác được đề xuất ở đây không hoạt động.


6

Đối với hầu hết mọi người vẫn nhận được lỗi sau khi sửa các thuộc tính dự án, có lẽ bạn đã cài đặt SDK Java 7 khi thiết lập môi trường của mình, nhưng hiện tại nó không được hỗ trợ để phát triển Android.

Là thông báo lỗi, bạn nên cài đặt Java 5.0 hoặc 6.0, nhưng đã tìm thấy Java 7.

Nếu bạn sửa các thuộc tính dự án mà không cài đặt Java 5 hoặc 6 trước, bạn sẽ gặp lại lỗi tương tự.

  • Vì vậy, trước tiên, hãy đảm bảo bạn đã cài đặt Java SDK 5 hoặc 6 hoặc cài đặt nó.
  • Kiểm tra biến môi trường của bạn (JAVA_HOME) đang trỏ đến SDK 5/6.

Và sau đó:

  • Kiểm tra xem Eclipse đang sử dụng SDK 5/6 theo mặc định (Window => Prefs. => Java => Trình biên dịch
  • Vô hiệu hóa cài đặt cụ thể của dự án (Thuộc tính dự án => Trình biên dịch Java)
  • Sửa thuộc tính dự án

HOẶC LÀ

  • Để lại Eclipse bằng cách sử dụng JDK 7 theo mặc định.
  • Bật cài đặt cụ thể của dự án (Thuộc tính dự án => Trình biên dịch Java)
  • Chọn Trình biên dịch tuân thủ 1.5 hoặc 1.6 (Thuộc tính dự án => Trình biên dịch Java)

3

Tôi đồng ý với BMSAndroidDroid và Flo-Scheild-Bobby. Tôi đang thực hiện một hướng dẫn có tên DailyQuote và đã sử dụng thư viện Cordova. Sau đó, tôi đã thay đổi HĐH của mình từ Windows sang Ubuntu và cố gắng nhập các dự án vào Eclipse, (Tôi đang sử dụng Eclipse Juno 64-bit, trênUbuntu 12.04 64-bit Oracle JDK 7. Tôi cũng đã cài đặt libs 32-bit của Ubuntu - vì vậy không có vấn đề gì với 64 và 32 bit), và có cùng một vấn đề.

Theo đề xuất của Flo-Scheild-Bobby, hãy mở cấu hình đường dẫn xây dựng và thêm lại các jar mà bạn đã thêm trước đó. Sau đó loại bỏ (các) liên kết jar cũ và đó là nó.


3

Tôi đã khắc phục vấn đề này bằng cách sử dụng hai thủ tục:

  1. Trong menu Eclipse -> 'Dự án' -> 'Trình biên dịch Java' -> đặt 'Mức độ tuân thủ trình biên dịch' = 1.6 kiểm tra 'Sử dụng cài đặt tuân thủ mặc định' Đặt 'Đã tạo. Tương thích lớp' = 1.6 Đặt 'Tương thích nguồn' = 1.6

  2. Sau đó, chuyển đến trình đơn 'Windows' -> 'Tùy chọn' -> 'Java', mở rộng 'Java' -> 'Trình biên dịch' -> Đặt 'Mức độ tuân thủ trình biên dịch' = 1.6

Gợi ý: Khả năng tương thích nguồn phải bằng hoặc nhỏ hơn mức tuân thủ.


Đừng sử dụng SO để quảng bá trang web của bạn.
caiocpricci2

2

Tôi sẽ đề nghị bạn kiểm tra các tệp jar được bao gồm đúng trong các dự án của bạn. Có khả năng nếu không có tệp jar, dự án sẽ không được biên dịch


2

Như BMSAndroidDroid đã nói, vấn đề này có thể do cấu hình đường dẫn xây dựng sai.

Nếu bạn đã bao gồm một số thư viện vào đường dẫn xây dựng của mình, sau đó di chuyển các thư viện, đường dẫn xây dựng sẽ bảo tồn các tham chiếu sai, sẽ không tìm thấy các thư viện trong quá trình biên dịch và bạn sẽ gặp lỗi.

Để khắc phục, nhấp chuột phải vào thư mục dự án của bạn> đường dẫn xây dựng> cấu hình đường dẫn xây dựng Sau đó hãy xem tab thư viện và xóa các thư viện cũ.


2

Trong trường hợp của tôi, một chuyển đổi từ openjdk7 sang openjdk6 đã giúp. Sau đó tôi đã thay đổi mức độ tuân thủ thành 1.6 và tất cả được biên dịch tốt.


1

Tôi gặp phải vấn đề này vì debug.keystore của tôi đã hết hạn, vì vậy tôi đã xóa debug.keystore trong thư mục .android và nhật thực sẽ tạo lại một debug.keystore mới, sau đó tôi đã sửa


1

Sau đây làm việc cho tôi

Enable project-specific settings and set the compliance level to 1.6

Làm thế nào bạn có thể làm điều đó?

Trong Eclipse Package Explorerthứ 3 của bạn bấm vào dự án của bạn và chọn properties. Cửa sổ thuộc tính sẽ mở. Chọn Java Compilertrên bảng điều khiển bên trái của cửa sổ. Bây giờ Enable project specific settingsvà thiết lập Complier compliance levelđể 1.6. Chọn Applyvà sau đó OK.

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.