2017-11-08 69 views
10

Với việc phát hành Java 9, nhiều phương pháp đã được thêm vào nhiều lớp, hầu hết (nếu không phải tất cả) trong đó chứa những điều sau đây trong tài liệu của họ:Java 9: ​​Làm thế nào để tìm mọi phương pháp mới được bổ sung

Kể từ: 9

Có cách nào dễ dàng để tìm bất kỳ phương thức mới nào được thêm vào trong lớp tùy ý mà không phải xem qua tài liệu của nó không?

Ví dụ: ByteBuffer.alignedSlice

+2

Bạn có thể viết một tài liệu nhỏ cho nó và yêu cầu javadoc nhổ chúng ra cho bạn. https://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/doclet/overview.html – pvg

+0

Tôi chỉ tìm kiếm theo chuỗi * @ kể từ 9 * trong src.zip – ZhekaKozlov

Trả lời

13

Bạn đang có lẽ tìm kiếm cái gì đó như jdkapidiff trong đó sử dụng japicmp để tạo các báo cáo tương tự như một tổ chức ở đây bởi tác giả - jdk8-jdk9-api-diff.

Bạn có thể sao chép dự án và thực thi mvn clean install để nhận báo cáo tương tự về địa phương của bạn.

Cung cấp một tập tin ~.m2/toolchains.xml như thế này:

<?xml version="1.0" encoding="UTF8"?> 
<toolchains> 
    <toolchain> 
     <type>jdk</type> 
     <provides> 
      <version>1.8</version> 
      <vendor>oracle</vendor> 
     </provides> 
     <configuration> 
      <jdkHome>/path/to/jdk-1.8</jdkHome> 
     </configuration> 
    </toolchain> 
    <toolchain> 
     <type>jdk</type> 
     <provides> 
      <version>9</version> 
      <vendor>oracle</vendor> 
     </provides> 
     <configuration> 
      <jdkHome>/path/to/jdk-9</jdkHome> 
     </configuration> 
    </toolchain> 
</toolchains> 
+5

@nullpointer Không rõ tại sao mọi người lại downvote, đây rõ ràng là một câu trả lời tốt. Trong thực tế, tôi nghi ngờ một cái tốt hơn tồn tại. – Nicolai

+0

Đó là một câu trả lời hoàn hảo tốt mặc dù nó sẽ không tìm thấy những điều chính xác câu hỏi yêu cầu - phương pháp đặc biệt chú thích với @Since. – pvg

+2

@pvg * tìm thấy bất kỳ phương thức mới nào được thêm vào trong một lớp tùy ý mà không cần * ... Trong báo cáo được tạo, hãy chọn lớp tùy ý đó và sau đó là các phương thức ** MỚI ** để tìm trong trường hợp này. Chúng được thêm vào "Kể từ: 9". – nullpointer

3

Có rất nhiều thay đổi đến các lớp học hiện có và các thành viên, ngoài việc mới 9 lớp @since và các thành viên. Bản phát hành cuối cùng của JSR 379 bao gồm một phụ lục với bộ hoàn chỉnh các khác biệt. Dự thảo trực tuyến tại đây: http://cr.openjdk.java.net/~iris/se/9/java-se-9-fr-spec-01/apidiffs/overview-summary.html

+2

Thật không may, các báo cáo khác tấn thay đổi giả tạo ra thay đổi định dạng, thường thậm chí không có hiệu ứng rõ ràng… – Holger

+0

@Holger một câu hỏi nhỏ, tại sao không sao chép các nguồn và grep cho 'kể từ 9', tôi khá chắc chắn có một kịch bản đã làm điều đó; hoặc tôi đã hiểu nhầm điều gì đó? – Eugene

+4

@Eugene: sau đó bạn nhận được số dòng hoặc các dòng có chứa “từ 9” và phải có độ dài lớn để có được thành viên được gắn thẻ thực tế. Bên cạnh đó, tại sao có [trang web chứa tài liệu API] (https://docs.oracle.com/javase/9/docs/api/?overview-summary.html) khi mọi người có thể tạo nó từ các nguồn? Nó làm cho cuộc sống dễ dàng hơn và sẽ dễ dàng hơn cho doclet chuẩn để tạo phần "Có gì mới" dựa trên các thẻ '@ Since' và nó sẽ hữu ích, không chỉ cho API JDK… – Holger

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