Java Web应用程序:静态资源的存放位置

Java Web应用程序:静态资源的存放位置,java,web-applications,enunciate,Java,Web Applications,Enunciate,我在web服务层中使用了enuciate(),我只想做一些非常简单的事情,但没有找到任何文档 我想部署一些图像和其他静态资源,并可从中访问,例如http://localhost:8080/myapp/images/img01.png 我试图在src/main/resources下创建一个文件夹images,但它并没有按照我想要的方式部署(里面的所有文件/文件夹都转到myapp/WEB-INF/classes,这是意料之中的) 有人可以告诉我,在阐明项目中,静态资源在哪里 我没有web.xml,因

我在web服务层中使用了enuciate(),我只想做一些非常简单的事情,但没有找到任何文档

我想部署一些图像和其他静态资源,并可从中访问,例如
http://localhost:8080/myapp/images/img01.png

我试图在
src/main/resources
下创建一个文件夹
images
,但它并没有按照我想要的方式部署(里面的所有文件/文件夹都转到myapp/WEB-INF/classes,这是意料之中的)

有人可以告诉我,在阐明项目中,静态资源在哪里


我没有web.xml,因为它是由Enounciate框架自动生成的。

静态资源是使用。所以基本上,你只需将你的图像放在
src/main/webapp/images/img01.png

下,事实上我找到了方法,并发布了我的解决方案作为答案

在我们的
pom.xml
中,我们将expunciate.xml路径如下所示:

 <plugin>
    <groupId>org.codehaus.enunciate</groupId>
    <artifactId>maven-enunciate-spring-plugin</artifactId>
    <version>${enunciate.version}</version>
    <configuration>
        <configFile>src/conf/enunciate.xml</configFile>
    </configuration>
    <executions>
        <execution>
            <goals>
                <goal>assemble</goal>
            </goals>
        </execution>
    </executions>
</plugin>
这意味着静态资源可以放在
src/conf/web/
中,然后名为
images
的文件夹将位于:
src/conf/web/images

像这样,
http://localhost:8080/myappcontext/images/

显示可用于webapp元素的选项:

  • preBase是一个文件夹或压缩的归档文件,它将在“阐明”生成之前复制
  • postBase是一个压缩存档文件夹,将在阐明生成后复制

对于图像和其他静态资源,使用其中一个属性应该不会有任何区别。

是的,我知道标准方法,但对于Enounciate项目,我们不再有webapps文件夹,因为主要内容是自动生成的(我们也使用maven Enounciate spring插件)。我想知道除了使用一个新的插件,是否还有其他方法。除了默认情况下包含的内容之外,没有其他方法可以告诉Enunciate包含一组额外的静态资源。您可以选择指定一个文档“base”来替换说明用途的base。请参阅文档模块的“base”属性,该属性记录在此处,但不正确,请参阅我的答案。您的链接指向生成的文档,但我希望静态资源与任何其他web应用程序一样。
<webapp postBase="web"></webapp>