{"id":15045978,"url":"https://github.com/cachedjdk/cjdk","last_synced_at":"2025-10-23T15:43:30.201Z","repository":{"id":39095780,"uuid":"505991697","full_name":"cachedjdk/cjdk","owner":"cachedjdk","description":"Auto-download JDK or JRE and run Java apps from Python or CLI","archived":false,"fork":false,"pushed_at":"2025-03-10T21:19:03.000Z","size":6967,"stargazers_count":3,"open_issues_count":7,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-10T00:43:28.992Z","etag":null,"topics":["cache","cli","java","jdk","jre","python"],"latest_commit_sha":null,"homepage":"https://cachedjdk.github.io/cjdk/latest/","language":"Python","has_issues":true,"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/cachedjdk.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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}},"created_at":"2022-06-21T20:19:12.000Z","updated_at":"2025-03-10T21:14:26.000Z","dependencies_parsed_at":"2024-03-05T20:52:48.099Z","dependency_job_id":null,"html_url":"https://github.com/cachedjdk/cjdk","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cachedjdk%2Fcjdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cachedjdk%2Fcjdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cachedjdk%2Fcjdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cachedjdk%2Fcjdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cachedjdk","download_url":"https://codeload.github.com/cachedjdk/cjdk/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137998,"owners_count":21053775,"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":["cache","cli","java","jdk","jre","python"],"created_at":"2024-09-24T20:52:32.416Z","updated_at":"2025-10-23T15:43:25.155Z","avatar_url":"https://github.com/cachedjdk.png","language":"Python","readme":"\u003c!--\nThis file is part of cjdk.\nCopyright 2022 Board of Regents of the University of Wisconsin System\nSPDX-License-Identifier: MIT\n---\u003e\n\n# cjdk\n\n**cjdk** (for \"cached JDK\") is a Python package and command-line tool to\ndownload and run JDK (Java Development Kit) or JRE (Java Runtime Environment)\ndistributions.\n\nPreviously used JDKs are kept in the user's cache directory, so that future\ninvocations do not require a download.\n\n## What for\n\n- Installing exact JDK versions for reproducible testing\n- Working with multiple versions of JDKs\n- Deploying tools that require Java\n\nUsing the command-line interface of **cjdk**, you can run Java programs using a\none-liner, without having to worry about whether the user has installed a new\nenough Java runtime and set `JAVA_HOME` and `PATH` to appropriate values.\n\nFor example, the following command will run\n[Checkstyle](https://checkstyle.org/) using Temurin JRE 17 (which will be\ndownloaded if this is the first time it is requested):\n\n```sh\ncjdk --jdk=temurin-jre:11 exec java -jar checkstyle-10.3-all.jar -c style.xml MyApp.java\n```\n\nSee the [documentation](https://cachedjdk.github.io/cjdk/latest) for detailed\nusage.\n\n**cjdk** was inspired by [Coursier](https://get-coursier.io/)'s\n[`java`](https://get-coursier.io/docs/cli-java) command, and uses Coursier's\n[JDK index](https://github.com/coursier/jvm-index)). Unlike Coursier, **cjdk**\ndoes not require a Java runtime to bootstrap.\n\n## Installing\n\n**cjdk** requires Python 3.9.\n\n```sh\npip install cjdk\n```\n\n## [Documentation](https://cachedjdk.github.io/cjdk/latest)\n\n## Licensing\n\n**cjdk** is distributed under the MIT license. Please see LICENSE.txt.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcachedjdk%2Fcjdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcachedjdk%2Fcjdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcachedjdk%2Fcjdk/lists"}