2009-03-05 36 views
5
java.lang.VerifyError: (class: a method: parse signature: 
()Z) Incompatible argument to function 

public boolean parse() { 


} 

không lỗi này có nghĩa là gì và làm thế nào để sửa chữa các loại lỗijava lang xác minh lỗi

+0

Bạn có thể cung cấp một ví dụ * hoàn chỉnh * mã cùng với một số thông tin cơ bản về JVM bạn đang sử dụng, nền tảng lưu trữ, v.v ... không? – JesperE

Trả lời

5

Thông thường loại này lỗi có liên quan đến vấn đề phiên bản, bạn đang biên soạn với một phiên bản khác nhau của một thư viện hơn bạn đang chạy với. Ngoài ra còn có một số loại khá tinh tế của điều này có thể xảy ra với java 1.5 loại cưỡng chế, nơi mà một trình biên dịch 1.4 sẽ chọn khác nhau. Biên dịch lại mọi thứ với 1.5 và đảm bảo bạn đang sử dụng cùng một phiên bản.

1

Tôi chỉ thấy câu này:

Ném khi "xác minh" phát hiện rằng một tập tin lớp , mặc dù được hình thành tốt, chứa một số loại nội bộ sự không thống nhất hoặc vấn đề bảo mật. Java API

Bạn đã trả về một boolean chưa?

Bạn có thể vui lòng cung cấp thêm thông tin, môi trường nào được đặt? Câu hỏi bảo mật là quan trọng, tôi nghĩ vậy.

2

Thông thường về vấn đề tương thích java 1.5 hoặc 6 (như cố gắng biên dịch mã Java5 hoặc 6 với 1,4 javac cũ hơn).

Làm sạch tất cả các tệp .class của bạn và xây dựng lại từ đầu, kiểm tra xem bạn có JDK và JRE của mình ở cùng cấp không.


Nó cũng có thể là một typecast xấu từ phương thức lớp "bên thứ ba" phương thức trả lại cho các địa phương của bạn.

0

tốt, đầu tiên có vẻ là giá trị trả về là missong. Bạn nên trả về giá trị boolean. Nhưng đây không phải là vấn đề. Đây là loại ngoại lệ xuất hiện khi bạn thực hiện một tài liệu tham khảo mà không thể được giải quyết, như một assignement trong một vòng lặp

for (i = i; i = XX;! I ++)

kiểm tra tài liệu tham khảo như vậy.

Luis

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