2011-10-11 64 views
1

我试图在mac中使用grinder测试框架,但我无法通过打开控制台的第一步。这是我的尝试: 我加入类路径,并尝试像这样从终端使用此命令如何在MAC中运行磨床?

java net.grinder.Console 

运行它,但我得到这个错误:

Error running worker process (org/picocontainer/ComponentFactory) 
Exception in thread "main" java.lang.NoClassDefFoundError: org/picocontainer/ComponentFactory 
    at net.grinder.engine.process.GrinderProcess.run(GrinderProcess.java:309) 
    at net.grinder.engine.process.WorkerProcessEntryPoint.run(WorkerProcessEntryPoint.java:86) 
    at net.grinder.engine.process.WorkerProcessEntryPoint.main(WorkerProcessEntryPoint.java:58) 
Caused by: java.lang.ClassNotFoundException: org.picocontainer.ComponentFactory 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
    at sun.misc.Launcher$ExtClassLoader.findClass(Launcher.java:229) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 

这是tutorial im following,任何人对此有一些想法。

+0

您还没有将该工具的任何部分放入您的类路径中,因此当然不会找到该类。请了解-cp和classpaths,并将您学到的知识应用于此问题。 – bmargulies

+0

多数民众赞成在拼图我的事情,我试过cp像这样**/path-to-java/bin/java -cp /path-to-grinder/lib/grinder.jar**我也试着导出** export CLASSPATH = $ CLASSPATH:/path-to-grinder/lib/grinder.jar**,但我仍然有这个问题。 – Jack

+0

你没有写在问题中。 – bmargulies

回答

0

磨床有一个比'grinder.jar'更长的类路径。您也需要类路径上的所有依赖关系。 (例如picocontainer)

如果研磨罐有一个MANIFEST.MF,它可能会列出它们,在这种情况下,这些罐必须与研磨罐放在同一个目录中。如果不是,则需要设置类路径以包含它们。

0

您显示的具体错误消息将通过将picocontainer-.jar添加到您的类路径中来解决。但是你可能需要在你的classpath中包含grinder lib目录中的所有内容,才能正常工作。