2011-08-26 29 views
21

Ví dụ: JDK 7 có khả năng chuyển đổi (Chuỗi) thay vì chỉ chuyển đổi (Số/Enum).Tính tương thích GWT với các tính năng mới JDK 7

Nếu tôi đã viết một ứng dụng khách GWT có chuyển đổi (Chuỗi) trong mã của nó, sẽ có bất kỳ sự cố nào không?

công tắc (Chuỗi) là một trong những vấn đề tôi có thể nghĩ đến. Có vấn đề tương thích ngoài chuyển đổi (String)?

+0

Bạn đã thử nó ra? – helpermethod

+2

@OliverWeiler: không có gì sai khi hỏi ngay cả khi bạn có thể tự mình tìm ra. câu hỏi/câu trả lời này đã cứu tôi rất nhiều thời gian. –

+0

Bạn luôn có thể biên dịch với JDK7, nhưng không sử dụng các tính năng này. Đó vẫn là một lựa chọn. – Brian

Trả lời

11

GWT chỉ chính thức hỗ trợ Java 5. Nó hỗ trợ một số ít Java 6, chẳng hạn như cho phép @Overrides trên phương pháp thực hiện một phương thức giao diện và String.isEmpty (mặc dù đó là về mô phỏng thời gian chạy, vì vậy nó không liên quan đến cú pháp và trình biên dịch).

BTW, GWT sử dụng JDT Eclipse để phân tích cú pháp và tệp đó chưa được phát hành với sự hỗ trợ cho Java 7 (nên đến really soon). Khi đã xong, GWT sẽ phải được cập nhật để tính đến "cú pháp đường" mới được thêm vào bởi Java 7. Khi thời gian đó đến (có thể sẽ không đến bất cứ lúc nào, than ôi), tôi đặt cược chuyển đổi-chuỗi sẽ là một trong những tính năng được hỗ trợ đầu tiên, vì JavaScript hỗ trợ nó (vì vậy nó sẽ dễ dàng dịch từ Java sang JS như một công tắc trên một số nguyên).

cũng Xem https://groups.google.com/d/topic/google-web-toolkit/dM8D9imIvAI/discussion

+1

Tôi tin rằng Java 6 được hỗ trợ chính thức. – anjanb

+0

Một số Java 7 có thể được hỗ trợ trong tương lai. Xem, https://gwt-review.googlesource.com/#/c/2650/ và https://gwt-review.googlesource.com/#/c/2681/) – Gewthen

11

Như câu trả lời cuối cùng là từ tháng 8 năm 2011, đây là một bản cập nhật cho GWT 2.5: vẫn không có hỗ trợ cho Java 7, xem Release Notes for GWT 2.5 RC2 (không thay đổi từ RC2 đến 2,5 cuối cùng).

+0

Có vẻ như vậy. Tôi muốn thử bằng cách sử dụng java.util.Objects thay vì của Guava, nhưng GWT bị nghẹt thở, mặc dù lớp này nằm trong danh sách trắng chính thức. Trừ khi tôi bị mất một cái gì đó trong cấu hình ... – PhiLho

+2

Đây là một bản cập nhật: phát triển đã được tiến hành, xem vấn đề # 7999 để biết chi tiết. Một vài ngày trước, tất cả các tính năng của Java 7 đã được cam kết và được thông qua để xem xét. Thi đua thời gian chạy vẫn cần một số công việc. Xem: http://code.google.com/p/google-web-toolkit/issues/detail?id=7999 – snorbi

+1

Cập nhật khác, theo liên kết từ @snorbi: https://code.google.com/ p/google-web-bộ công cụ/vấn đề/chi tiết? id = 8044 # c10 từ ngày 11 tháng 9 dường như đánh dấu hỗ trợ Java 7 là "FixedNotReleased" cho "Milestone-2_6" – jfrantzius

1

Có vẻ như Java 7 support sắp có trong GWT 2.6. Tính đến hôm nay, dự án có ba ứng cử viên phát hành available for download. Tôi sẽ đợi bản phát hành chính thức.

2

Bắt đầu từ GWT 2,6

Java 7 được hỗ trợ và bây giờ là mặc định. (Điều này có thể được ghi đè sử dụng -sourceLevel 6)

2.6 release notes

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