2008-12-16 5 views
2

Je suis en train d'écrire un projet de programme d'études pour les nouveaux étudiants de Java. Il a une structure de dossier comme telle. Je l'ai compris afin que le jar puisse charger toutes les classes dans le répertoire solutions/my/really/long/package /. en ajoutant 'solutions /' au classpath.Charger dynamiquement un fichier de classe avec un paquetage non par défaut et sans dossier imbriqué

Ma question est s'il est possible de le configurer afin qu'il n'y ait pas de longs dossiers imbriqués pour le paquet sans utiliser le paquetage par défaut.

La structure résultante serait

myjar.jar 
solutions/MySolution.class 

Mais la classe MySolution ne serait pas un package par défaut.

+0

Quel est le problème avec les fichiers de classe dans leur structure de répertoire de package appropriée? –

+0

Cela fonctionne, juste peut être un problème, en particulier pour un nouveau programmeur. –

Répondre

4

Eh bien, vous pourriez écrire votre propre classloader. Cela ferait probablement l'affaire - mais ce n'est vraiment pas une bonne chose à faire, et en particulier vos étudiants s'habitueraient à quelque chose qui ne fonctionnerait pas dans le monde réel. Pourquoi ne pas simplement utiliser un nom de paquetage court?

+0

Ou URLStreamHandler personnalisé (comme le protocole jar). Mais, oui, pourquoi? –

Questions connexes