Soudain, ne peut pas exécuter TestNG tests de fourmi ([testng] Causée par: java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException)

Je suis en utilisant ant et TestNG 6.1.1, et j'ai eu mes tests fonctionne très bien hier. Aujourd'hui, lorsque j'essaie d'exécuter les tests, je reçois un NoClassDefFoundError impliquant com/beust/jcommander/ParamException. Voici le résultat:

[copy] Copying 1 file to /Users/djohnson/src/webapp/components/build/tmp
[testng] Exception in thread "main" java.lang.NoClassDefFoundError: com/beust/jcommander/ParameterException
[testng] Caused by: java.lang.ClassNotFoundException: com.beust.jcommander.ParameterException
[testng]    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
[testng]    at java.security.AccessController.doPrivileged(Native Method)
[testng]    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
[testng]    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
[testng]    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
[testng]    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
[testng] The tests failed.

Ici est la .fichier xml que j'utilise:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="Single Method Suite">
  <test name="Single Method Test">
    <classes>
      <class name="DhcpTest">
        <methods>
          <exclude name=".*" />
          <include name="setGetEnabledTest" />
        </methods>
      </class>
    </classes>
  </test>
</suite>

J'ai aussi spécifié le chemin d'accès complet de la classe avec pas de chance. J'ai vérifié le chemin de la classe et tout semble bien fonctionner, quelqu'un a une idée sur ce point?

Ok, donc j'ai ajouté jcommander-1.17.jar dans le chemin, et je reçois toujours le même message d'erreur.
Maintenant que j'ai posté ceci pour tout le monde à voir, j'ai découvert que jcommander n'était pas réellement dans le classpath. J'étais sûr que j'ai vu il y a, mais bien sûr, c'était manquant. Maintenant il ne trouve pas le test, je ne sais pas pourquoi, parce que j'ai triple vérifié le chemin de la classe, et c'est certainement là.

OriginalL'auteur anotherdjohnson | 2011-08-17