Sì, hai ragione Ecco qualche dettaglio in più:

Dunque, il percorso della directory del progetto è il seguente (uso Mac):

codice:
Macintosh HD/Utenti/Scrivania/Progetto
All'interno della directory Progetto c'è un'altra directory "radice" di nome project che è il package principale. La struttura delle directory e dei file interni è quella che ho descritto nel primo post.

Ora, nella directory util ci sono quattro file che compilano perfettamente e senza errori. La prima riga di ogni file che si trova in util è la seguente:

codice:
package project.tui.util;
I problemi iniziano nella directory classes: ogni file che si trova in questa directory ha la seguente intestazione:

codice:
package project.tui.classes;
Prima di tutto, la classe User compila senza problemi ma le sottoclassi Admin e Guest no, l'errore è che entrambe le due sottoclassi non trovano la classe User che, però, si trova nella stessa directory. La classe Booking non compila perché non riesce a trovare la classe Guest di cui fa uso. Ecco l'errore che esce sul terminale:

codice:
Booking.java:39: cannot find symbol
symbol  : class Guest
location: class project.tui.classes.Booking
	public Guest getBooker() { return booker; }
	       ^
L'errore si ripete ogni volta in cui compare un oggetto di tipo Guest.
Le classi Room e Hotel fanno uso della classe List<T> contenuta nella directory util di prima, perciò, dopo l'intestazione con la direttiva "package" per creare il package faccio l'import della classe List<T> in util così:

codice:
Room.java

package project.tui.classes;
import project.tui.util.List;

public class Room {
	...
La stessa cosa si ripete per la classe Hotel.
Infine, nella directory app c'è un'unica classe ArchiveBuilder in cui si fa uso sia di classi che appartengono a util sia di classi che appartengono a classes perciò, dopo la direttiva package, importo come ti ho mostrato prima le classi che mi occorrono da util e da classes. Gli errori del compilatore sono sempre quelli: ogni volta in cui creo un riferimento ad un oggetto la cui classe è contenuta in uno degli altri package, il compilatore non riesce a trovarla:

codice:
ArchiveBuilder.java: 176 : cannot find symbol
symbol  : class Booking
location: class project.tui.app.ArchiveBuilder
	            List<Booking> reservation = new List<Booking>();
	                                                 ^
Dovrei aver aggiunto tutto. Spero che sia tutto chiaro, in caso contrario dimmi pure cosa non si capisce.

Grazie in anticipo per l'aiuto!