Java Maven、Vaadin和resources文件夹
我有一个现有的maven项目,在该项目中,我通过在POM文件中添加依赖项开始使用vaadin。但是,当我将VAADIN/themes文件夹放在src/main/resources下时,使用maven构建时,它会被复制到.war文件中的WEB-INF/classes文件夹中,而不是像预期的那样放在war根目录中。我已经尝试过所有明显的组合,比如src/main/webapp/VAADIN或src/main/VAADIN,甚至src/main/webapp/WEB-INF/VAADIN,但它们似乎都不是放置主题和其他VAADIN资源的正确位置 我还尝试生成一个vaadin项目,如本文所述,但没有成功。maven的行为方式也一样 有人知道如何在maven项目上正确设置Vaadin主题吗?我在maven 3上使用osx 10.6Java Maven、Vaadin和resources文件夹,java,css,gwt,maven,vaadin,Java,Css,Gwt,Maven,Vaadin,我有一个现有的maven项目,在该项目中,我通过在POM文件中添加依赖项开始使用vaadin。但是,当我将VAADIN/themes文件夹放在src/main/resources下时,使用maven构建时,它会被复制到.war文件中的WEB-INF/classes文件夹中,而不是像预期的那样放在war根目录中。我已经尝试过所有明显的组合,比如src/main/webapp/VAADIN或src/main/VAADIN,甚至src/main/webapp/WEB-INF/VAADIN,但它们似乎都
任何帮助都将不胜感激。致以最诚挚的问候我不确定Vaadin的具体情况,但您可以使用将资源复制到您喜欢的任何位置,而不仅仅是目标文件夹。因此,如果您想将名为VAADIN的文件夹从项目的根目录复制到war的根目录,可以如下设置:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/war</outputDirectory>
<resources>
<resource>
<directory>VAADIN</directory>
<filtering>false</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
通常,src/main/resources文件夹用于类路径上的资源,src/main/webapp用于webapp的WEB-INF文件夹中的资源。我建议将其他资源放在其他地方,可能是src/main/vaadin?。如果您真的想将它放在src/main/resources中,并且使用我刚才概述的方法,那么您还需要将其排除在外。Maven复制了其中的其他内容,这样更容易避免它。我不确定Vaadin的具体情况,但您可以使用将资源复制到您喜欢的任何地方,而不仅仅是目标文件夹。因此,如果您想将名为VAADIN的文件夹从项目的根目录复制到war的根目录,可以如下设置:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>copy-resources</id>
<phase>validate</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/war</outputDirectory>
<resources>
<resource>
<directory>VAADIN</directory>
<filtering>false</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
通常,src/main/resources文件夹用于类路径上的资源,src/main/webapp用于webapp的WEB-INF文件夹中的资源。我建议将其他资源放在其他地方,可能是src/main/vaadin?。如果你真的想把它放在src/main/resources中,并且你使用了我刚才概述的方法,你还需要排除它,Maven复制了其中的其他东西-更容易避免它。你应该从战争的根源上找到你所投入的一切 src/main/webapp/
没有任何定制。你应该从根本上了解你投入的一切 src/main/webapp/
没有任何定制。你说得对,我只是输入了错误的文件名。谢谢你的反馈你是对的,我只是打错了文件名。谢谢你的反馈