{"id":36623686,"url":"https://github.com/fathzer/java-check-launcher","last_synced_at":"2026-01-12T09:29:34.403Z","repository":{"id":242374228,"uuid":"809276507","full_name":"fathzer/java-check-launcher","owner":"fathzer","description":"A java application launcher that checks if used JRE is compatible with launched application","archived":false,"fork":false,"pushed_at":"2025-11-03T17:40:12.000Z","size":115,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-03T18:30:00.595Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fathzer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-06-02T08:23:09.000Z","updated_at":"2025-11-03T17:38:44.000Z","dependencies_parsed_at":"2024-06-02T16:54:14.111Z","dependency_job_id":"c7ab857b-e51a-46ce-bbd5-58d88a8318da","html_url":"https://github.com/fathzer/java-check-launcher","commit_stats":null,"previous_names":["fathzer/java-check-launcher"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/fathzer/java-check-launcher","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathzer%2Fjava-check-launcher","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathzer%2Fjava-check-launcher/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathzer%2Fjava-check-launcher/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathzer%2Fjava-check-launcher/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fathzer","download_url":"https://codeload.github.com/fathzer/java-check-launcher/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fathzer%2Fjava-check-launcher/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28337723,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-12T06:09:07.588Z","status":"ssl_error","status_checked_at":"2026-01-12T06:05:18.301Z","response_time":98,"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":[],"created_at":"2026-01-12T09:29:31.275Z","updated_at":"2026-01-12T09:29:34.398Z","avatar_url":"https://github.com/fathzer.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Maven Central](https://img.shields.io/maven-central/v/com.fathzer/java-check-launcher)](https://central.sonatype.com/artifact/com.fathzer/java-check-launcher)\n[![License](https://img.shields.io/badge/license-Apache%202.0-brightgreen.svg)](https://github.com/fathzer/java-check-launcher/blob/master/LICENSE)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=fathzer_java-check-launcher\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=fathzer_java-check-launcher)\n[![javadoc](https://javadoc.io/badge2/com.fathzer/java-check-launcher/javadoc.svg)](https://javadoc.io/doc/com.fathzer/java-check-launcher)\n\n# java-check-launcher\nA java application launcher that checks if used JRE is compatible with a launched application.\n\n## How to use it?\n\nThis library requires Java 1.2+.\n\n1 - Add The library to your project.\nAdd the following dependency to your project.\n\n```xml\n\u003cdependency\u003e\n  \u003cgroupId\u003ecom.fathzer\u003c/groupId\u003e\n  \u003cartifactId\u003ejava-check-launcher\u003c/artifactId\u003e\n  \u003cversion\u003e1.0.1\u003c/version\u003e\n\u003c/dependency\u003e\n```\n\n2 - Create settings resources.\n  Create a resource file in `com/fathzer/java-check-launcher/settings.properties` with the following content:\n\n```\nmin.java.version=1.8\nmain.class=com.me.MyApp\nlogger=swing\n```\n\nReplace the `min.java.version` value with the minimum java version required by your application and `main.class` value by the name of your main class.  \n`logger` is optional. If your application is a Swing application, leave the line, if it is a console application, remove the line.  \nYou can also implement your own [logger](https://github.com/fathzer/java-check-launcher/blob/src/main/java/com.fathzer.launcher.Logger.java). Be aware that this class will be instantiated before checking whether running JRE is recent enough. So it is wise to compile your custom logger for java 1.2.\n\n3 - Launch the application.\nRun the command `java com.fathzer.launcher.Launcher arg1 arg2` (Here, *arg1* and *arg2* are examples, assuming that the launched application requires two arguments. If your application requires no arguments, just run `java com.fathzer.launcher.Launcher`).  \nThe launcher will check the java version and will display a comprehensive message if application is not compatible with installed java version (not the usual `unsupported class file major version` exception).\nIf the java version is not supported, the process exits with a -1 code. If an error occurs (for instance if settings are invalid), the process exits with a -2 code.  \nIf everything is ok, the arguments are passed to the application's main method.\n\n## How to localize the alert messages when application can't be launched?\n\nThis library emits warnings in English. They are read from the `com/fathzer/launcher/Resources` [ResourceBundle]().  \nIf you want, for instance, add French translations, you have to add a your a `com/fathzer/launcher/Resources_fr.properties` containing those translations to your application's resources.\n\n## How to compile it?\n\nRecent Java JDK are not able to compile anymore java 1.2 code. **You should use a Java 8 JDK**.\n\nFor instance, if you have [toolchains](https://maven.apache.org/guides/mini/guide-using-toolchains.html) configured in `~/.m2/toolchains.xml`, you can run the command `mvn -Djdk=8 clean compile`.\n\nAnother cool option, if you have Docker installed, you can use the following command (on Linux) to deploy the library:\n\n```bash\ndocker run --rm -v $(pwd):/app -v ~/.m2:/root/.m2 -v ~/.gnupg:/root/.gnupg -e GPG_TTY=/dev/console -w /app maven:3.6.3-jdk-8 mvn clean deploy -Dgpg.passphrase=\"passphrase\"\n```\n\nWhere `passphrase` is the passphrase of the GPG key used to sign the artifact.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffathzer%2Fjava-check-launcher","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffathzer%2Fjava-check-launcher","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffathzer%2Fjava-check-launcher/lists"}