Distributed Systems Project 2022/2023
Group A39
In all source files (namely in the groupIds of the POMs), replace GXX with your group identifier. The group identifier consists of either A or T followed by the group number - always two digits. This change is important for code dependency management, to ensure your code runs using the correct components and not someone else's.
| Number | Name | User | |
|---|---|---|---|
| 99194 | Daniel Pereira | https://github.com/DaniPalma2002 | mailto:danielppereira2002@tecnico.ulisboa.pt |
| 99315 | Ricardo Toscanelli | https://github.com/rtoscanelli | mailto:ricardo.toscanelli@tecnico.ulisboa.pt |
| 99328 | Simão Gato | https://github.com/SimaoGato | mailto:simao.gato@tecnico.ulisboa.pt |
The overall system is made up of several modules. The main server is the DistLedgerServer. The clients are the User and the Admin. The definition of messages and services is in the Contract. The future naming server is the NamingServer.
See the Project Statement for a complete domain and system description.
The Project is configured with Java 17 (which is only compatible with Maven >= 3.8), but if you want to use Java 11 you can too -- just downgrade the version in the POMs.
To confirm that you have them installed and which versions they are, run in the terminal:
javac -version
mvn -versionTo compile and install all modules:
mvn clean install- Open namingServer in its directory
mvn compile exec:java- Open both server in different terminals
mvn compile exec:java -Dexec.args="2001 A"
mvn compile exec:java -Dexec.args="2002 B" - Open Admin and User in the corresponding directories
mvn compile exec:javaTo compile and execute with debug:
mvn clean compile exec:java -DdebugNo tests available for this sprint