{"id":28500969,"url":"https://github.com/jdx/mise-java","last_synced_at":"2026-03-15T08:05:11.461Z","repository":{"id":293599681,"uuid":"938183509","full_name":"jdx/mise-java","owner":"jdx","description":"A JVM Data Crawler","archived":false,"fork":false,"pushed_at":"2026-03-11T22:43:26.000Z","size":140090,"stargazers_count":2,"open_issues_count":2,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-12T03:41:25.043Z","etag":null,"topics":["cli","crawler","jvm"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jdx.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,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-02-24T14:54:35.000Z","updated_at":"2026-03-11T22:43:29.000Z","dependencies_parsed_at":"2025-06-12T23:29:01.874Z","dependency_job_id":"78bd9eee-6f9d-4d25-9db7-8a67224c4f9a","html_url":"https://github.com/jdx/mise-java","commit_stats":null,"previous_names":["roele/roast","jdx/mise-java"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jdx/mise-java","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdx%2Fmise-java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdx%2Fmise-java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdx%2Fmise-java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdx%2Fmise-java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jdx","download_url":"https://codeload.github.com/jdx/mise-java/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jdx%2Fmise-java/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30538256,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-15T07:17:37.589Z","status":"ssl_error","status_checked_at":"2026-03-15T07:17:31.738Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cli","crawler","jvm"],"created_at":"2025-06-08T15:08:08.894Z","updated_at":"2026-03-15T08:05:11.455Z","avatar_url":"https://github.com/jdx.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Roast a JVM Data Crawler\n\n![CI](https://github.com/jdx/mise-java/workflows/CI/badge.svg)\n![Update JVM Data](https://github.com/jdx/mise-java/workflows/Update%20Data/badge.svg)\n\nRoast is a data crawler that collects and stores information about JVM distributions from various vendors. The project\nis heavily based on the [Java Metadata](https://github.com/joschi/java-metadata) project.\n\nSupported distributions:\n\n* [Alibaba Dragonwell](https://cn.aliyun.com/product/dragonwell)\n* [Amazon Corretto](https://aws.amazon.com/corretto/)\n* [Azul Zulu](https://www.azul.com/downloads/)\n* [Bellsoft Liberica](https://bell-sw.com/pages/downloads)\n* [Bellsoft Liberica Native Image Kit](https://bell-sw.com/pages/downloads/native-image-kit/)\n* [Eclipse Temurin](https://adoptium.net/)\n* [GraalVM Community Edition](https://www.graalvm.org/)\n* [IBM Semeru](https://developer.ibm.com/languages/java/semeru-runtimes/)\n* [JetBrains Runtime](https://github.com/JetBrains/JetBrainsRuntime/)\n* [Mandrel](https://github.com/graalvm/mandrel)\n* [Microsoft OpenJDK](https://www.microsoft.com/openjdk)\n* [OpenJDK](https://jdk.java.net/)\n* [Oracle JDK](https://www.oracle.com/java/)\n* [Oracle GraalVM](https://www.graalvm.org/)\n* [RedHat](https://developers.redhat.com/products/openjdk/)\n* [SAP SapMachine](https://sap.github.io/SapMachine/)\n* [Tencent Kona JDK](https://www.tencentcloud.com/document/product/845/48051)\n* [Trava OpenJDK](https://github.com/TravaOpenJDK/)\n\n## Schema\n\nThe API schema can be found at [mise-java.jdx.dev](https://mise-java.jdx.dev).\n\n## Build \u0026 Run\n\n### Create and initialize the database\n\n#### Local Docker PostgreSQL\n\nAssuming you have a PostgreSQL container `postgres` running with a user `postgres`.\n\n```bash\ndocker exec -i -u postgres postgres psql -d postgres -c \"DROP DATABASE roast;\"\ndocker exec -i -u postgres postgres psql -d postgres -c \"CREATE DATABASE roast;\"\ndocker exec -i -u postgres postgres psql -d roast -c \"CREATE USER roast WITH PASSWORD 'roast';\"\ndocker exec -i -u postgres postgres psql -d roast \u003c ./sql/schema.sql\n```\n\n## Run\n\n### Environment variables\n\nRoast uses a configuration file `config.toml` to configure the database connection and other settings.\nYou can use the following environment variables to override the default configuration in `config.toml`.\n\n| Variable name              | Description                                  |\n| -------------------------- | -------------------------------------------- |\n| `ROAST_DATABASE_POOL_SIZE` | Number of threads to use for fetching data   |\n| `ROAST_DATABASE_URL`       | PostgreSQL connection string                 |\n| `ROAST_DATABASE_SSL_MODE`  | SSL mode for PostgreSQL connection           |\n| `ROAST_DATABASE_SSL_CA`    | CA certificate for PostgreSQL connection     |\n| `ROAST_DATABASE_SSL_CERT`  | Client certificate for PostgreSQL connection |\n| `ROAST_DATABASE_SSL_KEY`   | Client key for PostgreSQL connection         |\n| `ROAST_EXPORT_PATH`        | Export path for the data                     |\n\nAdditionally, you can set the following environment variables to configure the logging and threading.\n\n| Variable name       | Description                                                           |\n| ------------------- | --------------------------------------------------------------------- |\n| `RAYON_NUM_THREADS` | Number of threads to use by the Rayon module                          |\n| `RUST_LOG`          | Log configuration (see https://docs.rs/env_logger/latest/env_logger/) |\n\n### Fetch data from all vendors\n\n```bash\nenv \\\nRAYON_NUM_THREADS=50 \\\nRUST_LOG=roast=INFO \\\ncargo run -- fetch 2\u003e\u00261 | tee -a error.log\n```\n\n### Export data by release_type\n\n```bash\nenv \\\nRAYON_NUM_THREADS=50 \\\nRUST_LOG=roast=INFO \\\nROAST_EXPORT_PATH=data/releasetype/ \\\ncargo run -- export release-type 2\u003e\u00261 | tee -a error.log\n```\n\n### Export data by vendor\n\n```bash\nenv \\\nRAYON_NUM_THREADS=50 \\\nRUST_LOG=roast=INFO \\\nROAST_EXPORT_PATH=data/vendor/ \\\ncargo run -- export vendor 2\u003e\u00261 | tee -a error.log\n```\n\n## Disclaimer\n\nThis project is in no way affiliated with any of the companies or projects offering and distributing the actual JREs and JDKs.\nAll respective copyrights and trademarks are theirs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjdx%2Fmise-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjdx%2Fmise-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjdx%2Fmise-java/lists"}