{"id":19466874,"url":"https://github.com/digio/lightweight-java-spring-native","last_synced_at":"2026-04-18T10:12:35.357Z","repository":{"id":101108325,"uuid":"505828148","full_name":"digio/lightweight-java-spring-native","owner":"digio","description":null,"archived":false,"fork":false,"pushed_at":"2022-08-03T12:17:23.000Z","size":65,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-25T13:51:57.103Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/digio.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}},"created_at":"2022-06-21T12:12:22.000Z","updated_at":"2022-08-03T12:19:02.000Z","dependencies_parsed_at":null,"dependency_job_id":"91b2cd02-af3b-4061-ad02-afd638ed76f7","html_url":"https://github.com/digio/lightweight-java-spring-native","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/digio/lightweight-java-spring-native","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digio%2Flightweight-java-spring-native","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digio%2Flightweight-java-spring-native/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digio%2Flightweight-java-spring-native/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digio%2Flightweight-java-spring-native/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digio","download_url":"https://codeload.github.com/digio/lightweight-java-spring-native/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digio%2Flightweight-java-spring-native/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31964723,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T00:39:45.007Z","status":"online","status_checked_at":"2026-04-18T02:00:07.018Z","response_time":103,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"2024-11-10T18:31:17.221Z","updated_at":"2026-04-18T10:12:35.338Z","avatar_url":"https://github.com/digio.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Spring Native\n\nThis application is part of the Lightweight Java Tech Assessment. It's mainly focused on Spring Native with Graalvm.\n\n\n\n---\n## Regular Spring Boot\n### Build\nTo build the regular Spring Boot application, run the following command:\n```bash\ncd app\n./gradlew clean build\n```\n\n### Run\nTo run the regular Spring Boot application, run the following command:\n```bash\n./gradlew bootRun\n```\n\nOnce it's running in local, to test things out, try\n```bash\nlocalhost:8080/airports\n```\n\n\n---\n\n## Spring Native\n### Build\nTo build the Spring Native application, run the following command(_build time for native takes way longer than regular spring boot, grab a coffee_):\n```bash\ncd app\n./gradlew clean nativeCompile\n```\nThis will create an executable `app/build/native/nativeCompile/app`\n\n### Run\nOnce the build is done, run the following command:\n```bash\n.app/build/native/nativeCompile/app\n```\n\nOnce it's running, to test things out, try\n```bash\nlocalhost:8080/airports\n```\n\n\n---\n## Deployment\nThe application currently only build into native image and deploy to AWS lambda via CDK.\n\nTo bootstrap the AWS environment:\n```bash\ncd infra\ncdk bootstrap --toolkit-stack-name=GSNCDKToolkit --qualifier=graalvm-spring-native -v\n```\nTo build and deploy the application, make sure docker is running then:\n```bash\ncdk deploy\n```\n\nThis will pull the docker image, build the native image and deploy to AWS lambda.\nThe reason this will build the project again is that the previous `nativeCompile` will only build the executable based on\nyou local machine OS. However, to customize runtime on AWS lambda is based on Linux, which requires the executable build on \nLinux image. So, we need to build the native image again. Time to grab your second coffee,this process will take a while.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigio%2Flightweight-java-spring-native","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigio%2Flightweight-java-spring-native","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigio%2Flightweight-java-spring-native/lists"}