├── .github ├── FUNDING.yml ├── ISSUE_TEMPLATE │ ├── bug_report.md │ ├── design_discussion.md │ └── feature_request.md └── workflows │ └── check.yml ├── .gitignore ├── LICENSE ├── PLCT.svg ├── README.md ├── base ├── build.gradle.kts └── src │ └── main │ └── java │ └── org │ └── glavo │ └── japp │ ├── CompressionMethod.java │ ├── JAppProperties.java │ ├── TODO.java │ ├── annotation │ └── Visibility.java │ ├── classfile │ └── ClassFile.java │ ├── io │ ├── ByteBufferChannel.java │ ├── ByteBufferInputStream.java │ ├── ByteBufferOutputStream.java │ ├── IOUtils.java │ ├── LittleEndianDataOutput.java │ └── WritableByteChannelWrapper.java │ └── util │ ├── ByteBufferUtils.java │ ├── CompressedNumber.java │ ├── MUTF8.java │ ├── MemoryAccess.java │ ├── XxHash64.java │ └── ZstdUtils.java ├── bin ├── japp.ps1 └── japp.sh ├── boot ├── build.gradle.kts └── src │ └── main │ ├── java │ └── org │ │ └── glavo │ │ └── japp │ │ └── boot │ │ ├── JAppBootArgs.java │ │ ├── JAppBootLauncher.java │ │ ├── JAppBootMetadata.java │ │ ├── JAppReader.java │ │ ├── JAppResource.java │ │ ├── JAppResourceField.java │ │ ├── JAppResourceGroup.java │ │ ├── JAppResourceRoot.java │ │ ├── decompressor │ │ ├── DecompressContext.java │ │ ├── classfile │ │ │ ├── ByteArrayPool.java │ │ │ └── ClassFileDecompressor.java │ │ └── zstd │ │ │ ├── BitInputStream.java │ │ │ ├── Constants.java │ │ │ ├── FiniteStateEntropy.java │ │ │ ├── FrameHeader.java │ │ │ ├── FseCompressionTable.java │ │ │ ├── FseTableReader.java │ │ │ ├── Huffman.java │ │ │ ├── MalformedInputException.java │ │ │ ├── Util.java │ │ │ ├── ZstdFrameDecompressor.java │ │ │ └── package-info.java │ │ ├── jappfs │ │ ├── JAppDirectoryStream.java │ │ ├── JAppFileAttributeView.java │ │ ├── JAppFileAttributes.java │ │ ├── JAppFileStore.java │ │ ├── JAppFileSystem.java │ │ ├── JAppFileSystemProvider.java │ │ └── JAppPath.java │ │ ├── module │ │ ├── JAppModuleFinder.java │ │ └── JAppModuleReference.java │ │ └── url │ │ ├── JAppURLConnection.java │ │ ├── JAppURLHandler.java │ │ ├── JAppURLStreamHandlerFactory.java │ │ └── JAppURLStreamHandlerProvider.java │ └── module-info │ └── module-info.java ├── docs ├── COMPARE.md └── introduce.md ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── native ├── .gitignore ├── Cargo.lock ├── Cargo.toml └── src │ ├── launcher.rs │ └── main.rs ├── settings.gradle.kts ├── specification.md ├── src ├── main │ ├── java │ │ └── org │ │ │ └── glavo │ │ │ └── japp │ │ │ ├── Main.java │ │ │ ├── condition │ │ │ ├── AndCondition.java │ │ │ ├── Condition.java │ │ │ ├── ConditionParser.java │ │ │ ├── JavaCondition.java │ │ │ ├── MatchList.java │ │ │ ├── NotCondition.java │ │ │ └── OrCondition.java │ │ │ ├── launcher │ │ │ ├── EmbeddedLauncher.java │ │ │ ├── JAppConfigGroup.java │ │ │ ├── JAppLauncherMetadata.java │ │ │ ├── JAppResourceGroupReference.java │ │ │ └── Launcher.java │ │ │ ├── maven │ │ │ ├── MavenRepository.java │ │ │ └── MavenResolver.java │ │ │ ├── packer │ │ │ ├── JAppPacker.java │ │ │ ├── JAppResourceInfo.java │ │ │ ├── JAppResourcesWriter.java │ │ │ ├── JAppWriter.java │ │ │ ├── ModuleInfoReader.java │ │ │ ├── compressor │ │ │ │ ├── CompressContext.java │ │ │ │ ├── CompressResult.java │ │ │ │ ├── Compressor.java │ │ │ │ ├── Compressors.java │ │ │ │ ├── DefaultCompressor.java │ │ │ │ └── classfile │ │ │ │ │ ├── ByteArrayPoolBuilder.java │ │ │ │ │ ├── ClassFileCompressor.java │ │ │ │ │ └── ClassFileReader.java │ │ │ └── processor │ │ │ │ ├── ClassPathProcessor.java │ │ │ │ ├── LocalClassPathProcessor.java │ │ │ │ ├── MavenClassPathProcessor.java │ │ │ │ └── PathListParser.java │ │ │ └── platform │ │ │ ├── Architecture.java │ │ │ ├── JAppRuntimeContext.java │ │ │ ├── JavaRuntime.java │ │ │ ├── LibC.java │ │ │ └── OperatingSystem.java │ └── resources │ │ └── org │ │ └── glavo │ │ └── japp │ │ └── packer │ │ └── header.sh └── test │ └── java │ └── org │ └── glavo │ └── japp │ ├── boot │ ├── JAppResourceTest.java │ └── decompressor │ │ └── zstd │ │ └── ZstdTest.java │ ├── classfile │ └── ByteArrayPoolTest.java │ ├── launcher │ └── EndZipTest.java │ ├── packer │ ├── ModuleInfoReaderTest.java │ ├── compressor │ │ └── ClassFileCompressorTest.java │ └── processor │ │ └── PathListParserTest.java │ ├── testcase │ ├── HelloWorldTest.java │ ├── JAppTestHelper.java │ ├── JAppTestTemplate.java │ └── ModulePathTest.java │ └── util │ ├── CompressedNumberTest.java │ ├── MUTF8Test.java │ └── XxHash64Test.java └── test-case ├── HelloWorld ├── build.gradle.kts └── src │ └── main │ └── java │ ├── module-info.java │ └── org │ └── glavo │ └── japp │ └── testcase │ └── helloworld │ └── HelloWorld.java └── ModulePath ├── build.gradle.kts └── src └── main └── java └── org └── glavo └── japp └── testcase └── modulepath └── ModulePath.java /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | custom: ["https://donate.glavo.site/"] -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/.github/ISSUE_TEMPLATE/bug_report.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/design_discussion.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/.github/ISSUE_TEMPLATE/design_discussion.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/.github/ISSUE_TEMPLATE/feature_request.md -------------------------------------------------------------------------------- /.github/workflows/check.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/.github/workflows/check.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/LICENSE -------------------------------------------------------------------------------- /PLCT.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/PLCT.svg -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/README.md -------------------------------------------------------------------------------- /base/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/build.gradle.kts -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/CompressionMethod.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/CompressionMethod.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/JAppProperties.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/JAppProperties.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/TODO.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/TODO.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/annotation/Visibility.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/annotation/Visibility.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/classfile/ClassFile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/classfile/ClassFile.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/io/ByteBufferChannel.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/io/ByteBufferChannel.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/io/ByteBufferInputStream.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/io/ByteBufferInputStream.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/io/ByteBufferOutputStream.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/io/ByteBufferOutputStream.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/io/IOUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/io/IOUtils.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/io/LittleEndianDataOutput.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/io/LittleEndianDataOutput.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/io/WritableByteChannelWrapper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/io/WritableByteChannelWrapper.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/util/ByteBufferUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/util/ByteBufferUtils.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/util/CompressedNumber.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/util/CompressedNumber.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/util/MUTF8.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/util/MUTF8.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/util/MemoryAccess.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/util/MemoryAccess.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/util/XxHash64.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/util/XxHash64.java -------------------------------------------------------------------------------- /base/src/main/java/org/glavo/japp/util/ZstdUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/base/src/main/java/org/glavo/japp/util/ZstdUtils.java -------------------------------------------------------------------------------- /bin/japp.ps1: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/bin/japp.ps1 -------------------------------------------------------------------------------- /bin/japp.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/bin/japp.sh -------------------------------------------------------------------------------- /boot/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/build.gradle.kts -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppBootArgs.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppBootArgs.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppBootLauncher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppBootLauncher.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppBootMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppBootMetadata.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppReader.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppResource.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppResource.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppResourceField.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppResourceField.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppResourceGroup.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppResourceGroup.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/JAppResourceRoot.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/JAppResourceRoot.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/DecompressContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/DecompressContext.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/classfile/ByteArrayPool.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/classfile/ByteArrayPool.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/classfile/ClassFileDecompressor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/classfile/ClassFileDecompressor.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/BitInputStream.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/BitInputStream.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/Constants.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/Constants.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FiniteStateEntropy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FiniteStateEntropy.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FrameHeader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FrameHeader.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FseCompressionTable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FseCompressionTable.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FseTableReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/FseTableReader.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/Huffman.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/Huffman.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/MalformedInputException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/MalformedInputException.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/Util.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/Util.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/ZstdFrameDecompressor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/ZstdFrameDecompressor.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/package-info.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/decompressor/zstd/package-info.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppDirectoryStream.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppDirectoryStream.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileAttributeView.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileAttributeView.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileAttributes.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileAttributes.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileStore.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileSystem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileSystem.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileSystemProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppFileSystemProvider.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/jappfs/JAppPath.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/jappfs/JAppPath.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/module/JAppModuleFinder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/module/JAppModuleFinder.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/module/JAppModuleReference.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/module/JAppModuleReference.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/url/JAppURLConnection.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/url/JAppURLConnection.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/url/JAppURLHandler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/url/JAppURLHandler.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/url/JAppURLStreamHandlerFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/url/JAppURLStreamHandlerFactory.java -------------------------------------------------------------------------------- /boot/src/main/java/org/glavo/japp/boot/url/JAppURLStreamHandlerProvider.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/java/org/glavo/japp/boot/url/JAppURLStreamHandlerProvider.java -------------------------------------------------------------------------------- /boot/src/main/module-info/module-info.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/boot/src/main/module-info/module-info.java -------------------------------------------------------------------------------- /docs/COMPARE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/docs/COMPARE.md -------------------------------------------------------------------------------- /docs/introduce.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/docs/introduce.md -------------------------------------------------------------------------------- /gradle/libs.versions.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/gradle/libs.versions.toml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/gradlew.bat -------------------------------------------------------------------------------- /native/.gitignore: -------------------------------------------------------------------------------- 1 | /target -------------------------------------------------------------------------------- /native/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/native/Cargo.lock -------------------------------------------------------------------------------- /native/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/native/Cargo.toml -------------------------------------------------------------------------------- /native/src/launcher.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/native/src/launcher.rs -------------------------------------------------------------------------------- /native/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/native/src/main.rs -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/settings.gradle.kts -------------------------------------------------------------------------------- /specification.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/specification.md -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/Main.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/Main.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/AndCondition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/AndCondition.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/Condition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/Condition.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/ConditionParser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/ConditionParser.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/JavaCondition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/JavaCondition.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/MatchList.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/MatchList.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/NotCondition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/NotCondition.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/condition/OrCondition.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/condition/OrCondition.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/launcher/EmbeddedLauncher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/launcher/EmbeddedLauncher.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/launcher/JAppConfigGroup.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/launcher/JAppConfigGroup.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/launcher/JAppLauncherMetadata.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/launcher/JAppLauncherMetadata.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/launcher/JAppResourceGroupReference.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/launcher/JAppResourceGroupReference.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/launcher/Launcher.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/launcher/Launcher.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/maven/MavenRepository.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/maven/MavenRepository.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/maven/MavenResolver.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/maven/MavenResolver.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/JAppPacker.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/JAppPacker.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/JAppResourceInfo.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/JAppResourceInfo.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/JAppResourcesWriter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/JAppResourcesWriter.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/JAppWriter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/JAppWriter.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/ModuleInfoReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/ModuleInfoReader.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/CompressContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/CompressContext.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/CompressResult.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/CompressResult.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/Compressor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/Compressor.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/Compressors.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/Compressors.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/DefaultCompressor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/DefaultCompressor.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/classfile/ByteArrayPoolBuilder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/classfile/ByteArrayPoolBuilder.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/classfile/ClassFileCompressor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/classfile/ClassFileCompressor.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/compressor/classfile/ClassFileReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/compressor/classfile/ClassFileReader.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/processor/ClassPathProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/processor/ClassPathProcessor.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/processor/LocalClassPathProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/processor/LocalClassPathProcessor.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/processor/MavenClassPathProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/processor/MavenClassPathProcessor.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/packer/processor/PathListParser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/packer/processor/PathListParser.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/platform/Architecture.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/platform/Architecture.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/platform/JAppRuntimeContext.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/platform/JAppRuntimeContext.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/platform/JavaRuntime.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/platform/JavaRuntime.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/platform/LibC.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/platform/LibC.java -------------------------------------------------------------------------------- /src/main/java/org/glavo/japp/platform/OperatingSystem.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/java/org/glavo/japp/platform/OperatingSystem.java -------------------------------------------------------------------------------- /src/main/resources/org/glavo/japp/packer/header.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/main/resources/org/glavo/japp/packer/header.sh -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/boot/JAppResourceTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/boot/JAppResourceTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/boot/decompressor/zstd/ZstdTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/boot/decompressor/zstd/ZstdTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/classfile/ByteArrayPoolTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/classfile/ByteArrayPoolTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/launcher/EndZipTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/launcher/EndZipTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/packer/ModuleInfoReaderTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/packer/ModuleInfoReaderTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/packer/compressor/ClassFileCompressorTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/packer/compressor/ClassFileCompressorTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/packer/processor/PathListParserTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/packer/processor/PathListParserTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/testcase/HelloWorldTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/testcase/HelloWorldTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/testcase/JAppTestHelper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/testcase/JAppTestHelper.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/testcase/JAppTestTemplate.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/testcase/JAppTestTemplate.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/testcase/ModulePathTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/testcase/ModulePathTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/util/CompressedNumberTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/util/CompressedNumberTest.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/util/MUTF8Test.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/util/MUTF8Test.java -------------------------------------------------------------------------------- /src/test/java/org/glavo/japp/util/XxHash64Test.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/src/test/java/org/glavo/japp/util/XxHash64Test.java -------------------------------------------------------------------------------- /test-case/HelloWorld/build.gradle.kts: -------------------------------------------------------------------------------- 1 | tasks.compileJava { 2 | options.release.set(9) 3 | } -------------------------------------------------------------------------------- /test-case/HelloWorld/src/main/java/module-info.java: -------------------------------------------------------------------------------- 1 | module org.glavo.japp.testcase.helloworld { 2 | } -------------------------------------------------------------------------------- /test-case/HelloWorld/src/main/java/org/glavo/japp/testcase/helloworld/HelloWorld.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/test-case/HelloWorld/src/main/java/org/glavo/japp/testcase/helloworld/HelloWorld.java -------------------------------------------------------------------------------- /test-case/ModulePath/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/test-case/ModulePath/build.gradle.kts -------------------------------------------------------------------------------- /test-case/ModulePath/src/main/java/org/glavo/japp/testcase/modulepath/ModulePath.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Glavo/japp/HEAD/test-case/ModulePath/src/main/java/org/glavo/japp/testcase/modulepath/ModulePath.java --------------------------------------------------------------------------------