Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven、Vaadin和resources文件夹_Java_Css_Gwt_Maven_Vaadin - Fatal编程技术网

Java Maven、Vaadin和resources文件夹

Java 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,但它们似乎都

我有一个现有的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.6


任何帮助都将不胜感激。致以最诚挚的问候

我不确定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/
没有任何定制。

你说得对,我只是输入了错误的文件名。谢谢你的反馈你是对的,我只是打错了文件名。谢谢你的反馈