{"id":19745312,"url":"https://github.com/blosc/jblosc2","last_synced_at":"2025-04-30T07:34:12.045Z","repository":{"id":66787016,"uuid":"93512560","full_name":"Blosc/JBlosc2","owner":"Blosc","description":"Java interface for Blosc2 library","archived":false,"fork":false,"pushed_at":"2017-06-13T08:28:08.000Z","size":99,"stargazers_count":6,"open_issues_count":0,"forks_count":3,"subscribers_count":7,"default_branch":"master","last_synced_at":"2024-10-29T14:48:54.886Z","etag":null,"topics":["compression","java","performance"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Blosc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2017-06-06T11:50:23.000Z","updated_at":"2024-06-20T23:15:35.000Z","dependencies_parsed_at":"2024-03-15T02:25:04.026Z","dependency_job_id":null,"html_url":"https://github.com/Blosc/JBlosc2","commit_stats":{"total_commits":18,"total_committers":4,"mean_commits":4.5,"dds":"0.33333333333333337","last_synced_commit":"77a68d18aaa2414673598ee3f05636546673a7c9"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blosc%2FJBlosc2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blosc%2FJBlosc2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blosc%2FJBlosc2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Blosc%2FJBlosc2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Blosc","download_url":"https://codeload.github.com/Blosc/JBlosc2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224202864,"owners_count":17272807,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["compression","java","performance"],"created_at":"2024-11-12T02:06:52.326Z","updated_at":"2024-11-12T02:06:52.899Z","avatar_url":"https://github.com/Blosc.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JBlosc2\n\n| **Travis CI** | **Appveyor** |\n|---------------|--------------|\n|[![Build Status](https://travis-ci.org/Blosc/JBlosc2.svg?branch=master)](https://travis-ci.org/Blosc/JBlosc2) |[![Build status](https://ci.appveyor.com/api/projects/status/k7ler2n0ytmbjrw6?svg=true)](https://ci.appveyor.com/project/FrancescAlted/jblosc2)|\n\nJava interface for Blosc2\n\nThe purpose of this project is to create a Java interface for the compressor Blosc. JNA has been chosen as the mechanism to communicate with the Blosc2 shared library.\n\nA simple example extracted from the unit tests:\n```java\n    int SIZE = 100 * 100 * 100;\n    ByteBuffer ibb = ByteBuffer.allocateDirect(SIZE * PrimitiveSizes.DOUBLE_FIELD_SIZE);\n    for (int i = 0; i \u003c SIZE; i++) {\n        ibb.putDouble(i);\n    }\n    JBlosc2 jb2 = new JBlosc2();\n    ByteBuffer obb = ByteBuffer.allocateDirect(ibb.limit() + JBlosc2.OVERHEAD);\n    jb2.compress(5, Shuffle.BYTE_SHUFFLE, PrimitiveSizes.DOUBLE_FIELD_SIZE, ibb, ibb.limit(), obb, obb.limit());\n    ByteBuffer abb = ByteBuffer.allocateDirect(ibb.limit());\n    jb2.decompress(obb, abb, abb.limit());\n    jb2.destroy();\n    assertEquals(ibb, abb);\n```\n## Installation\nFirst of all, you need to install the Blosc2 library (visit https://github.com/Blosc/c-blosc2 for more details), in short, if you already have CMake, executing the following commands should do the work:\n```bash\ngit clone https://github.com/Blosc/c-blosc2.git\ncd c-blosc2\nmkdir build\ncd build\ncmake -DCMAKE_GENERATOR_PLATFORM=x64 ..\ncmake --build . --target install\n```\nTipically in Linux/Unix the Blosc2 library is installed in your system search path, however, in Windows you will need to add blosc.dll to your PATH (```copy \"c:\\Program Files (x86)\\blosc\\lib\\blosc.dll\" c:\\Windows\\System32```).\n\nAlso check that your OS, Java Virtual Machine and Blosc library are using the same architecture (either 32 or 64 bit).\n\nBuild: ```mvn clean install```\n\nIf you want to use it in another maven project, after installing it you can use it as a dependency like this:\n```xml\n\t\t\u003cdependencies\u003e\n\t\t\t\u003cdependency\u003e\n\t\t\t\t\u003cgroupId\u003eorg.blosc\u003c/groupId\u003e\n\t\t\t\t\u003cartifactId\u003ejblosc2\u003c/artifactId\u003e\n\t\t\t\t\u003cversion\u003e0.0.1-SNAPSHOT\u003c/version\u003e\n\t\t\t\u003c/dependency\u003e\n\t\t\u003c/dependencies\u003e\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblosc%2Fjblosc2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblosc%2Fjblosc2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblosc%2Fjblosc2/lists"}