https://github.com/dscalzi/zipextractor
Manage archives through Minecraft command 📚📖
https://github.com/dscalzi/zipextractor
bukkit jar minecraft pack200 rar spigot xz zip
Last synced: about 1 year ago
JSON representation
Manage archives through Minecraft command 📚📖
- Host: GitHub
- URL: https://github.com/dscalzi/zipextractor
- Owner: dscalzi
- License: agpl-3.0
- Created: 2018-03-08T20:12:11.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2022-07-30T22:55:30.000Z (almost 4 years ago)
- Last Synced: 2025-03-31T02:21:50.709Z (about 1 year ago)
- Topics: bukkit, jar, minecraft, pack200, rar, spigot, xz, zip
- Language: Java
- Homepage:
- Size: 387 KB
- Stars: 11
- Watchers: 4
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README

[
](https://ci.appveyor.com/project/dscalzi/zipextractor) [](https://github.com/dscalzi/PluginBadges) [](https://github.com/dscalzi/ZipExtractor/blob/master/LICENSE.txt)  [](https://discordapp.com/invite/Fcrh6PT)
ZipExtractor is an administrative utility plugin allowing the compression/extraction of archived files through minecraft command. This plugin is extremely useful for dealing with archives over FTP, which does not provide support for neither compression nor extraction. While many safeguards are in place, please note that **there is no undo button**. Overridden files **cannot** be recovered.
The source and destination file paths are saved inside of the config.yml. This means that only one can be set at a time. If you edit these values directly in the config.yml you must reload the plugin for the new values to take effect.
---
# Feature List
* Extraction of **ZIP**, **RAR**, **JAR**, **PACK**, **TAR**, **GZ**, and **XZ** archives.
* Note: Pack operations are only supported on JDK 13 and below.
* Compression of any file or directory into the **ZIP** or **TAR** formats.
* Compression of any **JAR** file to the **PACK** format, and any non-directory file to the **GZ** or **XZ** formats.
* Queueable operations if you have many extractions/compressions to perform.
* Configurable [Thread Pool Executor][thread_pools] allowing you to set a maximum queue size and maximum number of threads to run at once. Incase of an emergency the Thread Pool can be shutdown at anytime.
* Option to be warned if an extraction/compression would result in files being overriden.
* If enabled, users will require an additional permission in order to proceed with the process.
* For extractions, you can view every file which would be overriden prior to proceeding with the process.
* Tab completion for file paths, similar to the command line (configurable).
* Pipe multiple extractions/compressions with a single command. (Ex. Extract Test.jar.pack.xz to Test.jar).
* Metrics by [bStats][bStats]
You can find more extensive details on the [wiki][wiki].
***
# Contributing
If you would like to contribute to this project, feel free to submit a pull request. The project does not use a specific code style, but please keep to the conventions used throughout the code.
You can build ZipExtractor using [Gradle][gradle]. Clone the repository and run the following command.
```console
$ gradlew build
```
Since the main purpose of this plugin deals with archive manipulation, the plugin uses a provider system so that new formats can be easily supported. If you need support for a specific file extension you can create an issue and request it or submit a pull request which adds the provider. The *TypeProvider* class is documented in the code and implementations already exist if you need examples. A reference to each provider is saved in the *TypeProvider* class.
***
# Links
* [Spigot Resource Page][spigot]
* [Dev Bukkit Page][devbukkit]
* [Sponge Ore Page][spongeore]
* [Suggest Features or Report Bugs][issues]
[thread_pools]: http://tutorials.jenkov.com/java-util-concurrent/threadpoolexecutor.html "Thread Pool Information"
[bStats]: https://bstats.org/plugin/bukkit/ZipExtractor/1117 "bStats page"
[wiki]: https://github.com/dscalzi/ZipExtractor/wiki "Wiki page"
[gradle]: https://gradle.org/ "Gradle"
[spigot]: https://www.spigotmc.org/resources/zipextractor.43482/ "Spigot"
[devbukkit]: https://dev.bukkit.org/projects/zipextractor "DevBukkit"
[spongeore]: https://ore.spongepowered.org/TheKraken7/ZipExtractor "Sponge Ore"
[issues]: https://github.com/dscalzi/ZipExtractor/issues "Issue Tracker"