1

我在我的应用程序中嵌入了码头,文件夹树的结构是:

|--lib
|--WebRoot
      |---WEB-INF
                |---lib

我想知道的是---我应该把struts2 libs(例如struts2-core-2.2.3.1.jar,xwork-core-2.2.3.1.jar)放在哪里,以及servlet相关的api(例如servlet-api- 2.5-6.1.11.jar, jasper-compiler-5.5.15.jar api)?

我应该将 jar 放在顶层 lib 文件夹中还是放在 WEB-INF 内的 lib 文件夹中?

4

1 回答 1

1

这完全取决于您希望如何构建您的应用程序,如果您正在嵌入,您不必遵循传统的 webapp 方法,其中您有一个战争文件(爆炸或不爆炸)及其在 WEB-INF 下的库约定在您使用 web.xml 的示例中,您可以完全跳过 webapp 部署程序的想法,只需自己构建处理程序更改并在 java 代码中注册 servlet,看看我们拥有的一些嵌入式示例:

http://git.eclipse.org/c/jetty/org.eclipse.jetty.project.git/tree/example-jetty-embedded/src/main/java/org/eclipse/jetty/embedded/ManyServletContexts.java

那里还有其他示例,如果您正在嵌入,那么除非您需要部署战争,否则您不必在这方面搞砸。如果您确实需要部署战争,那么您将在任何正常使用 servlet 容器的地方放置东西,将战争的东西放在 WEB-INF/lib 中,并将系统类加载器中的东西放回主主类路径中。

于 2012-04-25T15:10:59.717 回答