maven发布的项目打包jsp

从eslipse迁移的Web项目的jsp、js、css等文件都是放到WebContent里,而Maven中,这些文件是放到webapp下的。所以,如果你直接用Maven进行install也就是打包的时候,你的页面相关的文件不会被打包进去,你会发现打好的war包里只有src下的.class文件和一些配置文件。那么如何将页面等文件也包含进去呢?

<build>
	<finalName>projectName</finalName>
	<plugins>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-war-plugin</artifactId>
			<version>3.2.3</version>					
			<configuration>
				<!--指定web.xml文件的位置-->
				<webXml>WebContent/WEB-INF/web.xml</webXml>				
				<!--指定jsp等文件所在位置-->   
				<warSourceDirectory>WebContent</warSourceDirectory>
			</configuration>
		</plugin>
	</plugins>
</build>

maven打包依赖到lib目录

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
                <execution>
                    <id>copy-dependencies</id>
                    <phase>package</phase>
                    <goals>
                        <goal>copy-dependencies</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>target/lib</outputDirectory>
                        <excludeTransitive>false</excludeTransitive>
                        <stripVersion>true</stripVersion>
                    </configuration>
                </execution>
            </executions>
        </plugin>
        <!--java代码打包插件,不会将依赖也打包-->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
        </plugin>
    </plugins>
</build>