Dette er mappen som ligger i rot-nivået til applikasjonen Training Logger. Mer informasjon om selve applikasjonen finnes i README i applikasjonsmappen.
Applikasjonen bygges og kjøres ved hjelp av byggeverktøyet Maven. Applikasjonen fungerer både lokalt og med tilkobling til server. Uansett hvilken måte man velger å bygge på så må man først kjøre kommandoen
mvn install
Etter at man har installert prosjektet må man gå inn i mappen fxui ved hjelp av kommandoen
cd fxui
Herfra kan man starte applikasjonen med kommandoen
mvn javafx:run
Etter at man har installert prosjektet må man starte serveren ved hjelp av kommandoen
mvn -pl integrationtests jetty:run -D"jetty.port=8999"
Dette starter serveren på port 8999. Deretter må man starte applikasjonen gjennom profilen "remoteapp". Dette gjøres med kommandoen
mvn -Premoteapp -pl fxui javafx:run
Dersom det skulle oppstå problemer under installasjon kan det hjelpe å rydde prosjektet med kommandoen
mvn clean
før installasjon.
Merk: Ettersom at GitPod er en VM så kan det oppstå problemer ved kjøring av tester, da noen av testene baserer seg på bytte av vindu. Det er fordi VM-en ofte kjører tregere enn en vanlig personlig datamaskin og dermed bruker den noen ganger for lang tid på å bytte vinduer før testen forsøker å finne neste element i brukergrensesnittet. Dette kan oppstå ved tilfeldige tider (basert på hvor mange som bruker GitPod og internetthastigheter o.l.) så dersom testene skulle feile så er det bare å kjøre installasjonen på nytt.
Prosjektet er bygd med mappestruktur i henhold til Maven. Strukturen vår ser slik ut:
- traininglogger: Overordnet modul (parent):
- core: Core-modul
- fxui: fxui-modul
- integrationtests: integrationtests-modul: Inneholder tester for integrasjonen mellom server og kjernelogikk
- restapi: restapi-modul:
- restapi: Inneholder klasser for implementasjon av REST-api
- restserver: restserver-modul:
- restserver: Inneholder klasser for bruk av lokal server
- resources: Inneholder default-filer for lagringen
- test: Inneholder tester av REST-serveren samt ressurser for testing
For mer informasjon om strukturen til applikasjonen, se README i prosjektmappen. Her finnes diverse diagrammer som forklarer strukturen ytterligere.
Build-filene vi bruker ligger på rotnivå (utenom pom.xml som ligger under prosjektmappen). Filer for Gitpod-konfigurasjon
- .gitpod.yml
- .gitpod.Dockerfile