我有以下代码:
Server server = new Server(9090);
final URL warUrl = Main.class.getClassLoader().getResource("com/domain/webapps/app");
final String warUrlString = warUrl.toExternalForm();
WebAppContext wac = new WebAppContext(warUrlString, "/app");
server.setHandler(wac);
我在包中有Main
课程。com.domain
jsp 和 html 都在com.domain.webapps.app
包中。
当在 Netbeans 中(或java -cp <classpath> com.domain.Main
在分解的 jar 上)运行时,应用程序可以完美运行。
如果我运行 jar ( java -jar app.jar
),则将提取的内容com.domain.webapps.app
提取到/tmp/Jetty_something/webapp/
,因此完整路径是/tmp/Jetty_something/webapp/com/domain/webapps/app/
但是,当我提出请求时http://localhost:9090/app/file.jsp
,Jetty 会尝试从/tmp/Jetty_something/webapp/file.jsp
(错误的位置 :-()获取文件
我在哪里可以做什么?
码头版本是 6.1.26