tôi có chức năng này ném lỗi lạ khi tôi cố gắng để làm một "mvn cài đặt"Lỗi: thông số loại <T> T không thể được xác định trong Maven Install
public <T> T get(final AN_ENUM key)
{
return some_map.get(key);
}
Đây là dòng mà tôi nhận được lỗi
final int value = get(AN_ENUM.A_FIELD);
Và đây là lỗi trong maven:
XXX.java:[25,41] type parameters of <T>T cannot be determined;
no unique maximal instance exists for type variable T with
upper bounds int,java.lang.Object
tôi biết đã làm thế nào để "sửa chữa nó" . Tôi chỉ cần thay đổi int
thành Integer
trong mẫu mã cuối cùng của tôi và lỗi này biến mất. Nó cho tôi biết rằng maven, vì một số loại lý do là không thể cast một Integer như một int khi tôi sử dụng một tham số kiểu.
Câu hỏi của tôi là .. tại sao?
Trong nhật thực, sử dụng cùng một JDK, tôi đã có thể chạy ứng dụng của mình mà không gặp bất kỳ sự cố nào cũng như cảnh báo.
- JDK 1.6
- Indigo Dịch vụ Eclipse Release 2
- Maven 3.0.4
Mức nguồn trong plugin trình biên dịch maven trong tệp POM.xml là gì? Nó có được đặt dưới 1,5 không? – GMK
Điều gì sẽ xảy ra nếu bạn biên dịch với javac? Bạn có thể thấy đây là sự khác biệt giữa ECJ và javac. – hertzsprung