我正在尝试将CAS服务器与Spring应用程序集成。 (我在本地配置了CAS,在我的Tomcat服务器上,它工作正常)。使用Maven Resources Plugin,我将cas.war
文件复制到我的Web应用程序的目标文件夹中。但我需要解压那个cas.war
文件才能覆盖一些我修改过的文件。如何使用Maven Resources Plugin解压从本地目录复制的war文件?
如何解开我使用Maven Resources Plugin`复制的这个war
文件?
这里是我的pom.xml
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warName>cas</warName>
<webResources>
<resource>
<directory>${basedir}/src/main/webapp/WEB-INF</directory>
<filtering>true</filtering>
<targetPath>WEB-INF</targetPath>
<includes>
<include>**/web.xml</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
<plugin>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>${maven-jetty-plugin.version}</version>
<configuration>
<webApp>
<contextPath>/cas</contextPath>
</webApp>
</configuration>
</plugin>
<!--Copy plugin-->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.1</version>
<executions>
<!--copy cas.war file-->
<execution>
<id>copy-initial-cas.war</id>
<phase>install</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<overwrite>true</overwrite>
<outputDirectory>${basedir}/target/cas</outputDirectory>
<resources>
<resource>
<directory>${CAS.LOCATION}/target</directory>
<includes>
<include>cas.war</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
<!--copying deployerConfigContext file-->
<execution>
<id>copy-deployerConfigContext</id>
<phase>install</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<overwrite>true</overwrite>
<outputDirectory>${basedir}/target/cas/WEB-INF</outputDirectory>
<resources>
<resource>
<directory>${basedir}/resources</directory>
<includes>
<include>deployerConfigContext.xml</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
<!--copying web.xml file-->
<execution>
<id>copy-web.xml</id>
<phase>install</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<overwrite>true</overwrite>
<outputDirectory>${basedir}/target/cas/WEB-INF</outputDirectory>
<resources>
<resource>
<directory>${basedir}/resources</directory>
<includes>
<include>web.xml</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
<!--copying casdatabase.properties file-->
<execution>
<id>copy-casdatabase.properties</id>
<phase>install</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/target/cas/WEB-INF</outputDirectory>
<resources>
<resource>
<directory>${basedir}/resources</directory>
<includes>
<include>casdatabase.properties</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!--unpacking plugin-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>unzip-war</id>
<phase>install</phase>
<configuration>
<tasks>
<echo message="unpack cas.war" />
<unzip src="${basedir}/target/cas/cas.war" dest="${basedir}/target/cas" overwrite="true"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
可能不需要解压文件。看看http://tomcat.apache.org/maven-plugin-2.2/tomcat7-maven- plugin/redeploy-mojo.html – Kennet
@Kennet谢谢,但这不是关于重新部署的问题。我需要通过获取本地安装的cas.war文件的副本并根据应用程序修改某些文件并重建它来获取CAS-ify应用程序。如果你可以看看我的pom.xml请。 – SMash