Le package-info.java est un fichier Java qui peut être ajouté à n'importe quel package source Java. Il est utilisé pour fournir des informations au niveau du «package» selon son nom. Il contient la documentation et les annotations utilisées dans le package.
L'exemple javadoc est déjà fourni dans la réponse, la partie ci-dessous explique comment cela fonctionne en cas d'annotations.
Par exemple, dans le fichier ci-dessous, il est utilisé pour "remplacer" l'occurance de joda.time.DateTime par org.jadira.usertype.dateandtime.joda.PersistentDateTime
@TypeDefs({
@TypeDef(name = "PersistentDateTime", typeClass = PersistentDateTime.class, defaultForType=DateTime.class)})
package xyz.abc;
import org.hibernate.annotations.TypeDef;
import org.hibernate.annotations.TypeDefs;
import org.jadira.usertype.dateandtime.joda.PersistentDateTime;
import org.joda.time.DateTime;
Il existe un certain nombre d'annotations disponibles avec lesquelles peuvent être utilisées pour effectuer différentes choses au niveau du «package». Il peut être trouvé à https://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/annotations/package-summary.html