2013-01-07 8 views
0

J'ai toujours codé de NetBeans interface, mais je voudrais apprendre à le faire à partir de ubuntu terminal, que je peux difficilement utiliser. Le fichier que je veux exécuter est le TabRemover.java. Je tends son répertoire à partir du terminal et écrire:Exécution java à partir de Terminal: NoClassDefFoundError

[email protected]:~/NetBeansProjects/TabRemover/src/tabremover$ java TabRemover 

Mais je reçois l'erreur suivante:

Exception in thread "main" java.lang.NoClassDefFoundError: TabRemover (wrong name: tabremover/TabRemover) 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:787) 
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) 
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:447) 
    at java.net.URLClassLoader.access$100(URLClassLoader.java:71) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:361) 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356) 
    at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:480) 

Que dois-je faire pour exécuter un programme Java depuis le terminal Ubuntu? J'ai vu qu'il y a différents sujets sur le sujet sur le web, mais ils n'ont pas l'air d'aider ...

Une suggestion?

Répondre

0

Vous avez besoin de l'option classpath ensemble dans comandline et bien sûr vous avez besoin de compiler avant avec javac

$cd ~/NetBeansProjects/TabRemover/src 
$java -classpath . org.tabremover.TabRemover 

-classpath et -cp - donner effet à sauver.

S'il vous plaît vérifier que TabRemover.java situé dans ~/NetBeansProjects/TabRemover/src/org/tabremover/TabRemover.java

org/tabremover devrait être le nom de package équivalent org.tabremover

+0

Merci pour votre iMysak répondre. Qu'est-ce qu'un classpath? Comment puis-je le définir? –

+0

J'ai vérifié la page http://en.wikipedia.org/wiki/Classpath_%28Java%29. Je suppose que pour créer un chemin de classe je devais écrire: java -classpath/home/NetBeansProjects/TabRemover/src/tabremover org.tabremover.TabRemover Pourquoi est-ce que je reçois: Erreur: Impossible de trouver ou de charger la classe principale org .tabremover.TabRemover –

+0

Je met à jour la réponse, vous devriez lancer cette commande à partir du répertoire de base qui contient le paquet. – iMysak

Questions connexes