- JVM extractor now supports --daemon mode: starts once, processes multiple archives via stdin JSON protocol, eliminating ~5s JVM boot per archive - TypeScript side: daemon manager starts JVM once, sends requests via stdin, falls back to spawning new process if daemon is busy - Fix extraction progress caching: replaced Object.create(null) + in operator with Set<string> + linear Array scan — both Map.has() and the in operator mysteriously failed to find keys that were just set - Daemon auto-shutdown on app quit via shutdownDaemon() in before-quit Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| classes/com/sucukdeluxe/extractor | ||
| lib | ||
| src/com/sucukdeluxe/extractor | ||
| README.md | ||
| THIRD_PARTY_NOTICES.txt | ||
JVM extractor runtime
This directory contains the Java sidecar runtime used by src/main/extractor.ts.
Included backends
sevenzipjbindingfor the primary extraction path (RAR/7z/ZIP and others)zip4jfor ZIP multipart handling (JD-style split ZIP behavior)
Layout
classes/compiledJBindExtractorMainclasseslib/runtime jars required by the sidecarsrc/Java source for the sidecar
Rebuild notes
The checked-in classes are Java 8 compatible and built from:
resources/extractor-jvm/src/com/sucukdeluxe/extractor/JBindExtractorMain.java
If you need to rebuild, compile against the jars in lib/ with a Java 8-compatible compiler.