我正在使用Eclipse Juno和Maven-WTP插件开发Web应用程序。这个应用程序有一个标题图像,我也有两个Maven配置文件。这些配置文件允许更改标题图像,因为它们指向图像所在的不同目录。这就是他们的配置方式:
<profile>
<id>local</id>
<properties>
<imagen.cabecera.dir>src/main/resources/styles/headers/example1</imagen.cabecera.dir>
</properties>
</profile>
<profile>
<id>local2</id>
<properties>
<imagen.cabecera.dir>src/main/resources/styles/headers/example2</imagen.cabecera.dir>
</properties>
</profile>
我的想法是当我更改 .m2 / settings.xml 中的活动配置文件时,也会更改头文件。活动配置文件的配置如下:
<activeProfiles>
<!--make the profile active all the time -->
<activeProfile>nexus</activeProfile>
<activeProfile>local</activeProfile>
</activeProfiles>
如果我更改活动配置文件并执行mvn clean install
,那么一切都像项目目标目录中的魅力一样。但是,问题来自Maven-WTP插件。这个插件从webapp/images
目录获取文件,看起来当我更改活动配置文件时没有获得新配置文件。 WTP插件似乎没有在这里更新文件,因此我在浏览器中显示旧文件,即使我做了clean install
。这是我的 pom.xml 配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-resources</id>
<phase>process-resources</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}</outputDirectory>
<resources>
<resource>
<directory>${imagen.cabecera.dir}</directory>
<includes>
<include>cabecera.jpg</include>
</includes>
<targetPath>${project.build.directory}/header</targetPath>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<executions>
<execution>
<id>default-war</id>
<configuration>
<webResources>
<resource>
<directory>${project.build.directory}/header</directory>
<includes>
<include>cabecera.jpg</include>
</includes>
<targetPath>/images</targetPath>
</resource>
</webResources>
</configuration>
</execution>
</executions>
</plugin>
有人知道吗?
答案 0 :(得分:0)
您可能需要通过以下方式更新Maven项目配置:
右键点击您的项目 - &gt; Maven - &gt;更新项目
答案 1 :(得分:0)
Maven Eclipse WTP插件正在从 webapp 目录中获取要部署的数据。线索是执行mvn clean install
时没有清理此目录,因为Maven只清理目标目录。诀窍是forcing Maven to clean我将要更新的资源。
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.5</version>
<configuration>
<filesets>
<fileset>
<directory>src/main/webapp/images</directory>
<includes>
<include>cabecera.jpg</include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>