我正在尝试让Maven自动下载jetty-start的所有依赖项,所以我运行这个:
java start.jar etc/jetty.xml
Run Code Online (Sandbox Code Playgroud)
但是当我这样做时:
java start.jar --list-options
Run Code Online (Sandbox Code Playgroud)
我得到几个缺少的模块,我必须手动添加为我的Maven文件的依赖项.我试着加入他们,我会被卡住在寻找一个合适的版本servlet-api将提供javax.servlet.http.HttpServletResponse,即使下载了罐子jetty-servlet有javax/servlet/http/HttpServletResponse.class它里面.这是错误:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.eclipse.jetty.start.Main.invokeMain(Main.java:457)
at org.eclipse.jetty.start.Main.start(Main.java:602)
at org.eclipse.jetty.start.Main.main(Main.java:82)
Caused by: java.lang.NoClassDefFoundError: javax/servlet/http/HttpServletResponse
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
at java.lang.Class.getConstructor0(Class.java:2699)
at java.lang.Class.newInstance0(Class.java:326)
at java.lang.Class.newInstance(Class.java:308)
at org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:333)
at org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:291)
at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1203)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1138)
... 7 more
Caused by: java.lang.ClassNotFoundException: javax.servlet.http.HttpServletResponse
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:307)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 17 more
Run Code Online (Sandbox Code Playgroud)
我已经尝试将org.eclipse.jetty.aggregate:jetty-all包添加到我的依赖列表中,但其中的包未被检测到java start.jar --list-options,因此不起作用.
有几页文档很有帮助,但没有具体回答这个问题:
你没有.
码头启动工件用于码头分布.使用jetty-start工件时没有自动下载依赖项,因为假设您在本地磁盘上进行分发,并且只是尝试将服务器启动的类路径编织在一起.
使用maven,如果您希望在构建期间启动Web应用程序以进行测试或构建,则可以使用jetty-maven-plugin.使用该插件,您将获得所需依赖项的lionshare,除非您尝试执行需要其他依赖项的特定内容,在这种情况下,您将它们添加到插件声明的部分.
干杯!
| 归档时间: |
|
| 查看次数: |
2703 次 |
| 最近记录: |