当我尝试从命令行码头启动它的失败:错误无法访问jarfile start.jar。我已经添加到$ path环境变量jetty bun没有发生任何事情的路径。 之前,我想我跑码头上的应用程序,但在的IntelliJ的输出控制台与此相撞:从命令行不能启动码头
"C:\Program Files\Java\jdk1.7.0_25\bin\java" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:16231,suspend=y,server=n -DSTOP.PORT=0 -Dcom.sun.management.jmxremote= -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -DOPTIONS=jmx -Dfile.encoding=windows-1251 -classpath "start.jar;C:\Program Files (x86)\JetBrains\IntelliJ IDEA 12.0\lib\idea_rt.jar" org.eclipse.jetty.start.Main etc/jetty-jmx.xml C:\Users\Grigoriy\AppData\Local\Temp\context4870587588634592162config\jetty-contexts.xml
[2013-11-25 03:17:23,756] Artifact sandbox:war exploded: Server is not connected. Press 'Deploy' to start deployment.
Connected to the target VM, address: '127.0.0.1:16231', transport: 'socket'
2013-11-25 03:17:25.237:WARN:oejx.XmlConfiguration:main: Config error at <Call name="addBean"><Arg>| <New class="org.eclipse.jetty.monitor.ThreadMonitor"><Set name="scanInterval">2000</Set><Set name="busyThreshold">90</Set><Set name="stackDepth">3</Set><Set name="trailLength">2</Set></New>| </Arg></Call> java.lang.ClassNotFoundException: org.eclipse.jetty.monitor.ThreadMonitor in file:/D:/servers/jetty907/jetty-distribution-9.0.7.v20131107/etc/jetty-monitor.xml
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.eclipse.jetty.start.Main.invokeMain(Main.java:509)
at org.eclipse.jetty.start.Main.start(Main.java:651)
at org.eclipse.jetty.start.Main.main(Main.java:99)
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.monitor.ThreadMonitor
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
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:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.eclipse.jetty.util.Loader.loadClass(Loader.java:100)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.nodeClass(XmlConfiguration.java:364)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.newObj(XmlConfiguration.java:754)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.itemValue(XmlConfiguration.java:1125)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.value(XmlConfiguration.java:1030)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.call(XmlConfiguration.java:721)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:417)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:354)
at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:262)
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1238)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1174)
... 7 more
Usage: java -jar start.jar [options] [properties] [configs]
java -jar start.jar --help # for more information
Disconnected from the target VM, address: '127.0.0.1:16231', transport: 'socket'
Disconnected from server
Process finished with exit code -2
更新。 这是我的码头,deploy.xml`
<Call id="webappprovider" name="addAppProvider">
<Arg>
<New class="org.eclipse.jetty.deploy.providers.WebAppProvider">
<Set name="monitoredDirName"><Property name="jetty.home" default="." />/webapps</Set>
<Set name="defaultsDescriptor"><Property name="jetty.home" default="." />/etc/webdefault.xml</Set>
<Set name="scanInterval">1</Set>
<Set name="extractWars">true</Set>
<Set name="configurationManager">
<New class="org.eclipse.jetty.deploy.PropertiesConfigurationManager">
</New>
</Set>
</New>
</Arg>
</Call>`
所以,我不明白在什么时间以及为什么ContextProvider更换WebAppProvider。
我决定排除从码头码头监视器intellij中的配置。现在,当我启动我的应用程序时,它会在类ContextProvider的jetty-contexts.xml中抛出ClassNotFoundException异常。当我尝试在具有相同服务器的另一台计算机上启动我的应用程序时,它成功完成并在码头环境中完成。XML我发现WebAppProvider而不是ContextProvider。 –
当我尝试在命令行中验证码头版本时,我看到“D:\ servers \ jetty907 \ jetty-distribution-9.0.7.v20131107未被识别为内部或外部命令,可操作程序或批处理文件” –
'java -jar start.jar --version'命令必须从'cmd'(命令行)运行,并且你必须首先转换到你的分发目录才能工作。 –