Я получаю другой вывод из того же фрагмента кода под другой младшей версией java. Я не смог найти соответствующий билет на открытом трекере ошибок jdk.Различные сообщения для CompletionException в разных младших версиях Java 8
CompletableFuture<String> completableFuture = new CompletableFuture<>();
completableFuture.complete("xxx");
completableFuture.thenCompose(str -> {
CompletableFuture<String> completableFuture1 = new CompletableFuture<>();
completableFuture1.completeExceptionally(new Exception("hello"));
return completableFuture1;
}).exceptionally(ex -> {
System.out.println(ex.getMessage());
return null;
}).get();
Выход под JDK 1.8.0_25:
привет
Выход под JDK 1.8.0_102:
java.lang.Exception: Привет
Является ли новое исправление или регрессия? Что такое связанный билет?
Не является ли сообщение об исключении только для людей? Все необходимые дополнительные значения должны содержаться в самом Исключении. – Robert