Chúng tôi rất vui mừng thông báo về việc phát hành GroupDocs.Conversion for Java v26.9. Bản phát hành tháng 9 năm 2026 này giới thiệu khả năng hủy đồng bộ cho việc chuyển đổi tài liệu, thêm các chuyển đổi giữa các định dạng luồng nén, và cung cấp một tên mô-đun Java ổn định. Nó cũng cập nhật các cặp chuyển đổi lưu trữ đã quảng cáo, vì vậy các ứng dụng chọn chuyển đổi một cách động nên xem xét các cặp có sẵn trước khi nâng cấp.
Những gì mới trong bản phát hành này
Các khóa vấn đề .NET dưới đây xác định các tính năng được chuyển sang Java; các tóm tắt mô tả các định dạng được hỗ trợ bởi bản phát hành Java này.
| Khóa | Thể loại | Thay đổi |
|---|---|---|
| CONVERSIONNET-6880 | Tính năng | Hỗ trợ hủy đồng bộ thông qua token hủy |
| CONVERSIONNET-7032 | Tính năng | Chuyển đổi Bzip2, Gzip, XZ và Unix Z sang LZMA |
| CONVERSIONNET-7019 | Tính năng | Chuyển đổi LZMA sang Bzip2 và Gzip |
| CONVERSIONNET-7020 | Tính năng | Chuyển đổi Unix Z sang Bzip2 và Gzip |
| CONVERSIONNET-7030 | Tính năng | Chuyển đổi Bzip2, Gzip, LZMA và Unix Z sang XZ |
| CONVERSIONNET-7029 | Tính năng | Chuyển đổi XZ sang Bzip2 và Gzip |
| CONVERSIONNET-7028 | Tính năng | Chuyển đổi Gzip sang Bzip2 |
| CONVERSIONNET-7021 | Tính năng | Chuyển đổi Bzip2 sang Gzip |
| CONVERSIONJAVA-3238 | Nhiệm vụ | Khắc phục các phát hiện xác minh gói trong groupdocs-conversion-26.7.jar |
Tệp JAR phát hành cũng khai báo Automatic-Module-Name: com.groupdocs.conversion cho các ứng dụng sử dụng hệ thống mô-đun Java.
Thay đổi API công khai
Hủy đồng bộ
Hai lớp mới, com.groupdocs.conversion.CancellationToken và com.groupdocs.conversion.CancellationTokenSource, cho phép một ứng dụng yêu cầu dừng một quá trình chuyển đổi. Tất cả các phương thức công khai Converter.convert(...) và Converter.convertPageByPage(...) hiện có các phiên bản overload với tham số CancellationToken cuối cùng. Trình thực thi chuyển đổi dạng fluent cũng thêm ConversionExecutor.convert(CancellationToken).
Các overload hiện có vẫn khả dụng và sử dụng CancellationToken.NONE, vì vậy các lời gọi chuyển đổi hiện có không cần thay đổi.
Tạo một nguồn token và truyền token của nó vào quá trình chuyển đổi:
import com.groupdocs.conversion.CancellationTokenSource;
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
import java.util.concurrent.CancellationException;
CancellationTokenSource cancellationSource = new CancellationTokenSource();
try (Converter converter = new Converter("input.docx")) {
// An application cancellation handler can call cancellationSource.cancel()
// from another thread while this conversion runs.
converter.convert(
"converted.pdf",
new PdfConvertOptions(),
cancellationSource.getToken()
);
} catch (CancellationException ex) {
System.out.println("Conversion was cancelled.");
}
Gọi cancellationSource.cancel() khi người dùng hủy một công việc hoặc ứng dụng quyết định dừng nó. Việc hủy được kiểm tra giữa các thao tác chuyển đổi: một thao tác đã đang chạy sẽ hoàn thành trước khi hủy được phát hiện. Quá trình chuyển đổi sau đó ném java.util.concurrent.CancellationException.
Đầu ra đã được ghi không được hoàn tác, vì vậy các ứng dụng nên xử lý đầu ra một phần khi hủy một công việc. Một nguồn đã bị hủy không thể được đặt lại; hãy tạo một nguồn mới cho công việc mới. Truyền một token null sẽ gây ra NullPointerException.
Chuyển đổi luồng nén
Phiên bản 26.9 hỗ trợ các nguồn và đích luồng nén sau, bao gồm cả chuyển đổi cùng định dạng:
| Hướng | Định dạng hỗ trợ |
|---|---|
| Nguồn | Bzip2 (Bz2), Gzip (Gz và Gzip), LZMA (Lzma), XZ (Xz), Unix Z (Z) |
| Đích | Bzip2, Gzip, LZMA, XZ |
Unix Z được hỗ trợ như một nguồn, nhưng không phải là đích trong bản phát hành này.
Sử dụng CompressionConvertOptions.setFormat(...) để chọn định dạng đầu ra. Ví dụ, chuyển đổi một luồng Gzip sang LZMA:
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.filetypes.CompressionFileType;
import com.groupdocs.conversion.options.convert.CompressionConvertOptions;
CompressionConvertOptions options = new CompressionConvertOptions();
options.setFormat(CompressionFileType.Lzma);
try (Converter converter = new Converter("input.gz")) {
converter.convert("converted.lzma", options);
}
Tương thích chuyển đổi lưu trữ
Các cặp chuyển đổi lưu trữ đã quảng cáo hiện được giới hạn trong các chuyển đổi trong ZIP, 7z, TAR và CPIO. Các ứng dụng dựa vào các cặp lưu trữ‑đến‑luồng‑nén đã quảng cáo trước đây nên xem xét các chuyển đổi có sẵn trước khi nâng cấp. Các định dạng nguồn và đích luồng nén được liệt kê ở trên mô tả một nhóm chuyển đổi riêng biệt.
Tên mô-đun Java ổn định
Tệp JAR phát hành khai báo mục manifest sau:
Automatic-Module-Name: com.groupdocs.conversion
Điều này cung cấp cho các ứng dụng sử dụng hệ thống mô-đun Java một tên mô-đun ổn định. Một ứng dụng mô-đun có thể tham chiếu tới nó trong module-info.java:
module example.conversion {
requires com.groupdocs.conversion;
}
Cách nhận bản cập nhật
Maven
Thêm kho lưu trữ GroupDocs và phụ thuộc 26.9 vào pom.xml của bạn, hoặc cập nhật phiên bản trong phụ thuộc hiện có:
<repositories>
<repository>
<id>groupdocs-artifacts-repository</id>
<url>https://repository.groupdocs.com/repo/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion</artifactId>
<version>26.9</version>
</dependency>
</dependencies>
Bạn cũng có thể duyệt GroupDocs.Conversion for Java Maven repository.
Tải trực tiếp
Tải gói Java từ trang GroupDocs.Conversion for Java releases.