This project is a demonstration of a simple Spring Boot application using Devbox to create an isolated development environment. The goal is to ensure that all dependencies and configurations are managed within the project, promoting consistency across different development setups.
- Spring Boot Version:
3.3.3
- Java Version:
22
The project includes the following dependencies:
- Spring Boot Starter Web: For serving the web application, including RESTful services.
- Spring Boot Starter Test: For unit testing with Spring Boot.
Ensure that you have Devbox installed and configured. Devbox manages the dependencies and environment configurations.
- Clone the repository
git clone https://github.com/eth-library/devbox-spring-demo.git
- Navigate to the Project Directory
cd devbox-spring-demo
- Switch to Devbox shell
devbox shell
- Start the webserver
mvn spring-boot:run
- Send a request to the endpoint
curl "http://localhost:8080/greeting?name=Devbox%20Tester"
-
Fork this repository
-
From the Code dropdown, select Create codespace on main
-
Once the codespace has loaded, run
devbox run start
in the terminal to start the webserver.devbox run start
-
When prompted, click Open in Browser.
Tip
If the popup is not visible, you can navigate to the Forwarded Ports tab, and open the Forwarded Address for port 8080.
- Success! You'll see the landing page and can now curl the greeting endpoint!
To maintain an isolated environment, a custom maven.config
file is provided in the .mvn
directory. This configuration ensures that all Maven dependencies are stored locally within the project rather than in a global repository. This approach helps to keep the development environment fully isolated, avoiding any interference from global dependencies.