使用Maven,我应该在哪个目录中放置图标文件?

时间:2012-02-09 22:23:10

标签: java maven icons

我在想我应该把它们放进去

C:\ProjectName\src\main\resources\com\company\projectname\icons

但我想确定我正在使用Maven的最佳做法。

3 个答案:

答案 0 :(得分:0)

答案 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插件。