当我运行qpid-server.bat时,我收到以下错误:
C:\qpid\qpid-0.24\java\broker\bin>qpid-server.bat
Warning: Qpid classpath not set. CLASSPATH set to C:\qpid\qpid-0.24\java\broker\lib\qpid-all.jar;C:\qpid\qpid-0.24\java\broker\lib\plugins\*;C:\qpid\qpid-0.24\java\broker\lib\opt\*
Info: QPID_JAVA_GC not set. Defaulting to JAVA_GC -XX:+UseConcMarkSweepGC -XX:+HeapDumpOnOutOfMemoryError
Info: QPID_JAVA_MEM not set. Defaulting to JAVA_MEM -Xmx1024m
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/qpid/server/Main
Caused by: java.lang.ClassNotFoundException: org.apache.qpid.server.Main
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 java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: org.apache.qpid.server.Main. Program will exit.
我没有运行任何代码。我刚刚启动qpid-server.bat并遇到上述错误。
如果有人建议我解决方案,我会非常感激。
答案 0 :(得分:1)
从Apache“qpid-java-6.1.0”下载代码后,我也运行代理时出错。我发现我使用的代理文件夹不正确。我能够通过将系统变量QPID_HOME设置为“C:\ qpid \ qpid-java-6.1.0 \ systests \ target \ qpid-broker \ 6.1.0”并运行“qpid-server.bat”来运行代理在那个位置。然后,您可以使用user = admin和password = admin以“http://localhost:8080”登录代理。我不确定“systests”文件夹是什么或bin和lib文件为什么在这里,但它的工作原理。导航到该文件夹并查看其中的文件。让我知道是否有一个更好的文件夹我应该在。我然后创建一个连接工厂的URL“amqp:// admin:admin @ clientid /?brokerlist ='tcp:// localhost:5672”然后它作品。
答案 1 :(得分:0)
我看到QPID_HOME environment variable设置不正确导致此问题。
正常安装时,QPID_HOME需要引用lib目录的直接父级。批处理文件尝试确定QPID_HOME(如果未设置),否则将使用其当前值。检查你没有错误地设置它。