1
我正在構建一個模塊化的Web應用程序,該應用程序將一些Spring組件包裝在jar依賴項(不同的模塊)中。這個jar文件中還含有像一些JSP資源:在jar中覆蓋JSP文件META-INF/resources不可預知
- Module + src/main/resources/META-INF/resources/module/*.jsp
現在我想用我的應用程序下面的結構來覆蓋特定的JSP。
- App + src/main/resources/META-INF/resources/module/menu.jsp
當使用tomcat7:run
有時會顯示覆蓋menu.jsp
但任何後續的運行將結束與舊的運行的應用程序。
與tomcat7:run-war
一起運行更有希望。顯示大多數運行新的menu.jsp。但是當將應用程序部署到另一個Tomcat 7實例時,舊的菜單再次可見。
menu.jsp包含使用pageContext.include("/module/menu.jsp");
,它由自定義標記調用。
我該如何使這個壓倒一切的資源更可靠?我完全無能爲力,因爲它似乎隨機工作。我希望有人能夠在這裏闡明一些看法。
不知道這是否是相關的,但要能夠使用組件掃描我需要用下面的插件配置來解壓縮罐類。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>unpack</id>
<phase>process-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<overWriteIfNewer>false</overWriteIfNewer>
<artifactItems>
<artifactItem>
<groupId>my.company</groupId>
<artifactId>my-dependency</artifactId>
<version>1.0-SNAPSHOT</version>
<type>jar</type>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<includes>**/*.class</includes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>