Skip to main content

Prerequisites

Before installing the client, ensure you have the following installed:
  • Java 25 or higher
  • JavaFX 25.0.2 (managed automatically via Gradle)
  • Git for cloning the repository
The project uses the OpenJFX Gradle plugin version 0.1.0 to manage JavaFX dependencies automatically.

Clone the repository

1

Clone the source code

Clone the repository to your local machine:
git clone <repository-url>
cd <repository-directory>
2

Verify Java version

Ensure you’re running Java 25 or higher:
java -version

Build the JavaFX client

The project uses Gradle as its build system with the following configuration:

Dependencies

The client requires these JavaFX modules (defined in build.gradle.kts):
  • javafx.graphics - Core graphics rendering
  • javafx.controls - UI controls and components
  • javafx.fxml - FXML support for declarative UI

Build commands

1

Build the project

Use Gradle to compile the project:
./gradlew build
2

Run the application

Launch the JavaFX client:
./gradlew run
The application entry point is set to org.uwgb.compsci330.frontend.Main, which delegates to the FXApplication class.
Make sure your JAVA_HOME environment variable points to Java 25 or higher. The JavaFX modules are version-specific and require compatible Java runtime.

Project structure

The client application is located in:
src/main/java/org/uwgb/compsci330/frontend/
├── Main.java          # Application entry point
└── FXApplication.java # JavaFX application class

Troubleshooting

Runtime dependency issues

The project uses a separate Main class instead of launching FXApplication directly. This architecture resolves runtime dependency issues with JavaFX module loading.

Build failures

If you encounter build failures:
  1. Verify Java version compatibility
  2. Clear Gradle cache: ./gradlew clean
  3. Rebuild: ./gradlew build --refresh-dependencies

Build docs developers (and LLMs) love