Project is build as gradle root and child projects. Gradle handles build and run of program using AspectJ Java runtime. Build Environment: JDK25, Eclipse 4.38 with Gradle Buildship or VSCode with Extension Pack for Java; vscjava.vscode-java-pack( 0.30.5 ) AspectJ 1.9.25+ OpenJFX (** https://gluonhq.com/products/javafx/ **) This java UI sdk requires you download windows/linux/Mac JMODs libs to your workspace on your host. refer to the launch.json file, and add the directory location for the jmods you downloaded. In Eclipse import project as an Gradle Project. Tests with ASPECTJ: on windows: gradlew.bat run / or on linux: sh ./gradlew edu.addressbook.view:run AspectJ Referee component will call the Game plays. schema ------- CREATE TABLE CONTACT( ID NUMBER PRIMARY KEY, FIRST_NAME TEXT, LAST_NAME TEXT, PHONE_NUMBER TEXT, EMAIL_ADDRESS TEXT, MAIL_ADDRESS TEXT ); ------- INSERT INTO CONTACT (ID, FIRST_NAME, LAST_NAME, PHONE_NUMBER, EMAIL_ADDRESS, MAIL_ADDRESS) VALUES (8,"Ramon", "Razone", "443-310-8764","Raz@home.com",NULL), (9,"Manny", "Zonie", "443-350-6764","Zonie@home.com","7000 Hause Ln, People City,MN, 34090"), (10,"Von", "Ray", "443-210-9764","RayVon@home.com",""); UPDATE CONTACT SET MAIL_ADDRESS=NULL WHERE ID=8; ------- CREATE TABLE contact ( contact_id NUMBER PRIMARY KEY, first_name TEXT, last_name TEXT ); CREATE TABLE phone ( contact_id NUMBER FOREIGN KEY, phone_no TEXT ); CREATE TABLE emailaddress ( contact_id NUMBER FOREIGN KEY, email TEXT ); CREATE TABLE address ( contact_id NUMBER FOREIGN KEY, street TEXT, city TEXT, state TEXT, zip TEXT ); CREATE TABLE note ( contact_id NUMBER FOREIGN KEY, note TEXT ); CREATE TABLE activity ( activity_id NUMBER FOREIGN KEY, activity_type TEXT, activity_note TEXT ); CREATE TABLE contact_activity ( activity_id NUMBER FOREIGN KEY, contact_id NUMBER FOREIGN KEY ); CREATE TABLE friends ( contact_id NUMBER FOREIGN KEY, friend_contact_id NUMBER FORIEGN KEY );