Ми раді оголосити про випуск GroupDocs.Conversion for Java v26.9. Цей випуск вересня 2026 року вводить кооперативне скасування для конвертації документів, додає конверсії між форматами стислих потоків і забезпечує стабільну назву Java‑модуля. Також оновлено рекламовані пари конверсії архівів, тому застосунки, які динамічно вибирають конверсії, мають переглянути доступні пари перед оновленням.

Що нового у цьому випуску

Ключі .NET нижче ідентифікують функції, портовані на Java; резюме описує формати, підтримувані цим випуском Java.

Ключ Категорія Зміна
CONVERSIONNET-6880 Функція Підтримка кооперативного скасування через токени скасування
CONVERSIONNET-7032 Функція Конвертувати Bzip2, Gzip, XZ і Unix Z у LZMA
CONVERSIONNET-7019 Функція Конвертувати LZMA у Bzip2 і Gzip
CONVERSIONNET-7020 Функція Конвертувати Unix Z у Bzip2 і Gzip
CONVERSIONNET-7030 Функція Конвертувати Bzip2, Gzip, LZMA і Unix Z у XZ
CONVERSIONNET-7029 Функція Конвертувати XZ у Bzip2 і Gzip
CONVERSIONNET-7028 Функція Конвертувати Gzip у Bzip2
CONVERSIONNET-7021 Функція Конвертувати Bzip2 у Gzip
CONVERSIONJAVA-3238 Завдання Виправити результати перевірки пакету у groupdocs-conversion-26.7.jar

JAR‑файл випуску також оголошує Automatic-Module-Name: com.groupdocs.conversion для застосунків, що використовують систему модулів Java.

Зміни публічного API

Кооперативне скасування

Два нових класи, com.groupdocs.conversion.CancellationToken і com.groupdocs.conversion.CancellationTokenSource, дозволяють застосунку запросити зупинку конвертації. Усі публічні методи Converter.convert(...) і Converter.convertPageByPage(...) тепер мають перевантаження з фінальним параметром CancellationToken. Флюентний виконавець конвертації також додає ConversionExecutor.convert(CancellationToken).

Існуючі перевантаження залишаються доступними і використовують CancellationToken.NONE, тому існуючі виклики конвертації не потребують змін.

Створіть джерело токену і передайте його токен у процес конвертації:

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")) {
    // Обробник скасування застосунку може викликати cancellationSource.cancel()
    // з іншого потоку, поки ця конвертація виконується.
    converter.convert(
        "converted.pdf",
        new PdfConvertOptions(),
        cancellationSource.getToken()
    );
} catch (CancellationException ex) {
    System.out.println("Conversion was cancelled.");
}

Викликайте cancellationSource.cancel(), коли користувач скасовує завдання або застосунок вирішує його зупинити. Скасування перевіряється між операціями конвертації: операція, яка вже запущена, завершується перед тим, як скасування буде зафіксовано. Після цього конвертація піднімає java.util.concurrent.CancellationException.

Виведені вже дані не відкатуються, тому застосунки повинні обробляти частковий вихід при скасуванні завдання. Скасований джерело не можна скинути; створіть нове джерело для нового завдання. Передача null токену викликає NullPointerException.

Конверсії стислих потоків

Версія 26.9 підтримує наступні джерела та цілі стислих потоків, включаючи конверсії у тому ж форматі:

Напрямок Підтримувані формати
Джерело Bzip2 (Bz2), Gzip (Gz і Gzip), LZMA (Lzma), XZ (Xz), Unix Z (Z)
Призначення Bzip2, Gzip, LZMA, XZ

Unix Z підтримується як джерело, але не як ціль у цьому випуску.

Використовуйте CompressionConvertOptions.setFormat(...) для вибору формату виводу. Наприклад, конвертуйте Gzip‑потік у 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);
}

Сумісність конверсії архівів

Рекламовані пари конверсії архівів тепер обмежені конверсіями в межах ZIP, 7z, TAR і CPIO. Застосунки, які покладалися на раніше рекламовані пари архів‑до‑стислий‑потік, мають переглянути доступні конверсії перед оновленням. Формати стислих потоків, зазначені вище, описують окрему групу підтримуваних конверсій.

Стабільна назва Java‑модуля

JAR‑файл випуску оголошує наступний запис у маніфесті:

Automatic-Module-Name: com.groupdocs.conversion

Це надає застосункам, що використовують систему модулів Java, стабільну назву модуля. Модульний застосунок може посилатися на нього у module-info.java:

module example.conversion {
    requires com.groupdocs.conversion;
}

Як отримати оновлення

Maven

Додайте репозиторій GroupDocs і залежність 26.9 у ваш pom.xml, або оновіть версію у вже існуючій залежності:

<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>

Ви також можете переглянути GroupDocs.Conversion for Java Maven repository.

Пряме завантаження

Завантажте Java‑пакет зі сторінки GroupDocs.Conversion for Java releases.

Ресурси