Comment faire pour compiler des paquets en java?
J'ai écrit un simple programme du package:
//A simple package
package MyPack
class Balance
{
String name;
double bal;
Balance(String n, double b)
{
name=n;
bal=b;
}
void show()
{
if(bal<0)
System.out.println("-->");
System.out.println(name+ ": $:" +bal);
}
}
class AccountBalance
{
public static void main(String args[])
{
Balance current[]=new Balance[3];
current[0]=new Balance("A.K.Juwatkar",123.123);
current[1]=new Balance("A.P.Dhoke",345.67);
current[2]=new Balance("Anil Sarang",100.98);
for(int i=0;i<3;i++)
current[i].show();
}
}
J'utilise Ubuntu 10.04 &
Quand je le compiler à l'aide de
java MyPack.AccountBalance
Je reçois le message suivant:
Exception in thread "main" java.lang.NoClassDefFoundError: MyPack/AccountBalance
Caused by: java.lang.ClassNotFoundException: MyPack.AccountBalance
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: MyPack.AccountBalance. Program will exit.
Quel est le problème? Merci de m'aider.
J'ai installé openjdk, ai-je besoin d'installer quoi que ce soit d'autre??
J'utilise Ubuntu 10.04, de bien vouloir m'aider
- Avez-vous importé mypack.Solde le solde du Compte?
- shivasoft.en/blog/java/...
- ntu.edu.sg/home/ehchua/programmation/java/...
Vous devez vous connecter pour publier un commentaire.
Mieux est de compiler et d'exécuter les classes à partir de l'extérieur du colis :
D'abord vous compilez avec javac :
cela va créer un nouveau fichier dans le dossier appelé MyPack AccountBalance.class
puis vous pouvez l'exécuter :
Par la voie: il est déconseillé d'avoir des noms de package de démarrer avec un capital.
Lorsque vous essayez de compiler la classe java, utilisez l'option '-d' option (destination) pour spécifier où le .les fichiers de classe doit être situé.
et lorsque vous exécutez votre programme, assurez-vous que même dossier est inclus dans votre chemin de classe:
Essayez de créer le dossier nommé
MyPack
et de se déplacer .les fichiers de classe ou utiliser la ligne de commande suivante pour compiler le code java et il se déplace de la .les fichiers de classe dansMyPack
dossier.et exécuté à l'aide d',
Ont un coup d'oeil à javac outil
et package tutoriel.
Si vous êtes fréquemment compilation et à l'exécution via
javac
etjava
commandes, puis utiliserÇa va compiler la classe puis exécutez la classe que vous avez juste compilé.
Remarque: Remplacer
&&
avec;
si l'aide de Windows powershell.java
commande vous n'avez pas besoin de spécifier le.class
extension, mais seulement l'complet de la classe nom de la classe contenant lamain
méthode;
pour exécuter une commande après l'autre. Mise à jour de ma réponse encore une fois.