我在想我应该把它们放进去
C:\ProjectName\src\main\resources\com\company\projectname\icons
但我想确定我正在使用Maven的最佳做法。
答案 0 :(得分:0)
资源和任何资源一样好。
http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html
答案 1 :(得分:0)
我在这里遇到同样的问题。我搜索了差不多半天,试图在这个问题上得到一些帮助。关于这个主题没有太多有用的信息。我做了一些实验。不过,我希望更有经验的专家意见。这是我发现的。
我的项目是maven,我正在使用Tomcat 7. Java 7,这可能是无关紧要的。
我的目录布局(忽略不相关的目录):
src main java resources images mytest.gif META-INF webapp images mytest.gif js WEB-INF *.jsp
如果查看war文件,则资源目录中的图像位于 WEB-INF /类/图像/ mytest.gif;然而,webapp目录中的图像可以公开访问,只需作为images / mytest.gif。
由于我在我的Web应用程序中同时使用servlet和JSP,问题是images目录的哪个位置更好?看起来webapp更好,因为JSP适合于查看,而servlet适用于逻辑和模型。您无法从JSP访问位于资源目录中的映像(如果您通过另一个servlet的代理,则可能)。图像似乎不包含秘密,因此您应该将它们公之于众。
或者您可以保留两个目录,一个用于包含机密的图像,另一个用于不包含秘密的目录。
答案 2 :(得分:0)
这完全取决于您要做什么。 1)如果要使用serveletContext加载图像,则资源文件夹是正确的文件夹,因为资源中的任何内容都将最终存储在WEB-INF中。 2)如果要直接从War文件夹的根目录通过它们的路径加载它们,则需要maven WAR插件。