有时我们必须在项目中保留很多小文件(例如isomorphic的智能客户端)。这是大约10万个小文件。 svn(我不知道git如何处理它),复制,打包等问题,但这些文件几乎永远不会改变,因为它只是一个外部库。有没有办法将它们保存在一个zip文件中并告诉tomcat从该文件中托管它们?或者他们应该区别对待?任何最佳做法?
更准确。这是我的文件夹结构:
src/main/
+---webapp/
| +---static/ <-- thousand 3rd party's files in this dir
|
+---java/
Maven将使用我的代码和静态文件构建战争,它将起作用。但是在战争构建之前使用这么多文件是一个PINA。我想要像:
src/main/
+---webapp/
| +---static.zip <-- only 1 file
|
+---java/
是否可以在流行的网络服务器上使用?
答案 0 :(得分:1)
如果您在servlet-3.0 Web应用程序中,请创建一个jar文件,并将所有静态资源放在此jar文件中的META-INF / resources下。然后将此jar文件放在Web应用程序的WEB-INF / lib中,容器将为您的静态资源提供服务,就像它们位于Web应用程序的根目录一样。
因此,如果您希望静态资源foo.hml的URL为
http://localhost/myWebApp/static/foo.html,
你应该有这个目录/ jar结构:
webapp
WEB-INF
lib
static.jar
META-INF
resources
static
foo.html