{"id":16701198,"url":"https://github.com/oliver-loeffler/java-toolkit-for-windows","last_synced_at":"2026-04-08T18:31:08.527Z","repository":{"id":91211372,"uuid":"497669332","full_name":"Oliver-Loeffler/Java-Toolkit-for-Windows","owner":"Oliver-Loeffler","description":"Template to compile an Innosetup project wich provides some Java related tooling (JDKs, Eclipse, Git, Wixtoolset etc.). Download scripts included.","archived":false,"fork":false,"pushed_at":"2023-03-25T16:31:00.000Z","size":6545,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-03T13:06:55.175Z","etag":null,"topics":["eclipse-ide","git-scm","graalvm","gradle","java","maven","openjfx","scenebuilder","windows","wix","wix-toolset"],"latest_commit_sha":null,"homepage":"","language":"Inno Setup","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/Oliver-Loeffler.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}},"created_at":"2022-05-29T18:02:07.000Z","updated_at":"2023-03-25T16:29:49.000Z","dependencies_parsed_at":"2023-07-04T14:32:35.630Z","dependency_job_id":null,"html_url":"https://github.com/Oliver-Loeffler/Java-Toolkit-for-Windows","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Oliver-Loeffler/Java-Toolkit-for-Windows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oliver-Loeffler%2FJava-Toolkit-for-Windows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oliver-Loeffler%2FJava-Toolkit-for-Windows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oliver-Loeffler%2FJava-Toolkit-for-Windows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oliver-Loeffler%2FJava-Toolkit-for-Windows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Oliver-Loeffler","download_url":"https://codeload.github.com/Oliver-Loeffler/Java-Toolkit-for-Windows/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Oliver-Loeffler%2FJava-Toolkit-for-Windows/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31568573,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-08T14:31:17.711Z","status":"ssl_error","status_checked_at":"2026-04-08T14:31:17.202Z","response_time":54,"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":["eclipse-ide","git-scm","graalvm","gradle","java","maven","openjfx","scenebuilder","windows","wix","wix-toolset"],"created_at":"2024-10-12T18:43:08.187Z","updated_at":"2026-04-08T18:31:08.507Z","avatar_url":"https://github.com/Oliver-Loeffler.png","language":"Inno Setup","readme":"# Customized Installer for a Java Developers Setup on Windows 10\n\nIt can be quite time consuming to setup and prepare a new developer PC - especially in restricted environments.\nThis experiment uses InnoSetup to create an installable bundle providing all necessary tooling:\n\n* The installation does not require elevated privileges, everything works per user.\n* Eclipse IDE for Java Developers (2022-03)\n* Adoptium / Temurin LTS JDKs: 11, 17 \n* Most recent Adoptium / Temurin JDK: 18\n* Zulu8 JDK with JavaFX - sometimes one still needs Java8\n* GraalVM 22.1 Community Edition with Java 17 support\n* OpenJFX 18 together with SceneBuilder 18\n* Gradle.org Build Tool 7.4.2\n* Apache Maven 3.8.5 Build Tool\n* WIX Toolset 3.11.2 (is required by JPackage on Windows)\n* GIT-SCM 2.36.1 for Windows\n\nAll components are collected by a download script. Then, all packages are unzipped and arranged so, that InnoSetup can consume all packages.\nGradle will by default use the provided Java 17 as runtime. At this point, Maven still looks for JAVA_HOME but configuring this is not mandatory.\nGradle, Maven and Git Bash are configured with scrips inside `scripts` directory.\nThese scripts are Java classes with main methods and these are called by InnoSetup.\n\nOn Windows Commandline and on Git-Bash for Windows, one can use the `jdks` command to list all JDKs which have been installed.\nBy calling `jdk8`, `jdk11`,`jdk17`,`jdk18` or `graal17` one can switch between the various JDKs on command line and Git Bash.\n\nThe installation for all these components works without admin provileges, those are not needed.\nAll files are installed in `C:\\Users\\\u003cusername\u003e\\AppData\\Local\\Programs\\java` (which is `%LOCALAPPDATA%\\Programs\\java`). \n\nFollowing files are modified during installation:\n* `%USERPROFILE%\\.gradle\\gradle.properties`\n* `%USERPROFILE%\\.bashrc`\n* `%LOCALAPPDATA%\\Programs\\java\\gradle-7.4.2\\bin\\{gradle|gradle.bat}`\n\n\n## Prepare the InnoSetup Build - collect all materials\n\n1. Clone the repository\n\n```cmd\n\u003e git clone https://github.com/Oliver-Loeffler/Java-Toolkit-for-Windows.git\n```\n\n2. Download all components\n\n```cmd\n\u003e cd Java-Toolkit-for-Windows\nJava-Toolkit-for-Windows\u003e download-all\n```\n\nCurl is used to perform all necessary downloads. All files will be placed in `downloads`.\nThe InnoSetup script then requires all files unzipped and placed in a specific folder structure.\n\n3. Unzip all components and create required folders\n\n```cmd\nJava-Toolkit-for-Windows\u003e unzip-all\n```\n\n4. Open the file `Java-Toolkit.iss` using the InnoSetup 6.2.1 IDE and run the package compile.\n\n* https://jrsoftware.org/isinfo.php\n* https://jrsoftware.org/isdl.php#stable\n* https://mlaan2.home.xs4all.nl/ispack/innosetup-6.2.1.exe\n\nAfter a successful package compile, there should be an installer `Java-Development-Tools.exe` (approx. 1.43 GiB) inside the `build` directory.\n\n![Installation Package](images/installer.file.png?raw=true \"Installation Package\")\n\n## Helpful stuff\n\nIf you completed the InnoSetup packaging and also installed the full package on your system, you can test the installation success on Windows Commandline.\nThe `jdks` command will provide an overview about what is available.\n\n```cmd\n\u003e jdks\n===============================================\n Available JDKs:\n===============================================\nC:\\Users\\Username\\AppData\\Local\\Programs\\java\\zulu8.62.0.19-ca-fx-jdk8.0.332-win_x64\nC:\\Users\\Username\\AppData\\Local\\Programs\\java\\jdk-11.0.15+10\nC:\\Users\\Username\\AppData\\Local\\Programs\\java\\jdk-17.0.3+7\nC:\\Users\\Username\\AppData\\Local\\Programs\\java\\jdk-18.0.1+10\nC:\\Users\\Username\\AppData\\Local\\Programs\\java\\graalvm-ce-java17-22.1.0\nC:\\Users\\Username\\AppData\\Local\\Programs\\java\\jdk-18.0.1+10 (current JDK)\n```\n\nWell, if JDK18 is not suitable anymore, by entering `jdk8` one could activate the Zulu8 JDK.\n\n```cmd\n\u003ejdk8\n===============================================\n Switched to JDK 1.8 (Zulu 8 with JavaFX)\n===============================================\nJAVA_HOME=C:\\Users\\Username\\AppData\\Local\\Programs\\java\\zulu8.62.0.19-ca-fx-jdk8.0.332-win_x64\nopenjdk version \"1.8.0_332\"\nOpenJDK Runtime Environment (Zulu 8.62.0.19-CA-win64) (build 1.8.0_332-b09)\nOpenJDK 64-Bit Server VM (Zulu 8.62.0.19-CA-win64) (build 25.332-b09, mixed mode)\n```\n\n## Installer Images\n\n![Welcome Dialog](images/welcome.dialog.png?raw=true \"Welcome Dialog\")\n![Component Selection Dialog](images/component.selection.dialog.png?raw=true \"Component Selection Dialog\")\n![Additional Tasks Dialog](images/additional.tasks.dialog.png?raw=true \"Additional Tasks Dialog\")\n![Ready To Install Dialog](images/ready.toinstall.dialog.png?raw=true \"Ready To Install Dialog\")\n![Setup Completed Dialog](images/setup.completed.dialog.png?raw=true \"Setup Completed Dialog\")\n\n## Interesting notes\n* Run other installer: https://stackoverflow.com/questions/19589309/inno-setup-install-other-installer-and-run-it-before-continuing-my-install\n* Task params: https://stackoverflow.com/questions/62019243/using-the-tasks-parameter-with-registry-key-entries-in-inno-setup-script\n* Temp dir: https://stackoverflow.com/questions/37150558/inno-setup-define-the-tmp-location\n* Environment modification: https://stackoverflow.com/questions/3304463/how-do-i-modify-the-path-environment-variable-when-running-an-inno-setup-install\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foliver-loeffler%2Fjava-toolkit-for-windows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foliver-loeffler%2Fjava-toolkit-for-windows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foliver-loeffler%2Fjava-toolkit-for-windows/lists"}