Maven使用WEB-INF/lib下面的jar编译和打包

  • Post author:
  • Post category:其他



在某些情况下,maven无法下载依赖的jar,或者依赖的m2会非常的大,上G那是随随便便的事。为了方便修改和编译,在打出的war包基础上,或者直接把tomcat的webapps下的项目拿出来,就可以用WEB-INF/lib下面的jar包,这样就可以直接引用了。但是,这些jar包如何与maven工程结合,使用mvn clean compile package等命令时,如何能正确的运行,下面解释一下。


一、在maven工程中引用


打开任一项目的Java Build Path对话框,在Libraries下面,Add Library…,然后选择User Library,点击右侧的User Libraries…,新建一个用户自己的库,然后把本地的WEB-INF/lib下面的jar包添加进去,然后在项目里面引用即可。


二、在Maven编译打包命令中使用


在pom.xml添加如下配置,主要是配置compilerArguments参数:

    <build>
        <plugins>
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                    <compilerArguments>
                        <extdirs>F:\devptool\code\tempo\WEB-INF\lib</extdirs>
                    </compilerArguments>
                </configuration>
            </plugin>
        </plugins>
    </build>


添加这个编译插件的参数即可,就可以开开心心的使用maven编译打包了。再说明一点,虽然项目依赖的包使用的是WEb-INF/lib下面的jar包,不需要下载,但是编译和打包插件所依赖的包还是要有的,需要配置本地仓库,所幸的是依赖的包不多,几十兆左右吧,下载一次后,就可以复制到没有网络的地方继续使用了。


国内仓库推荐使用阿里云的:https://maven.aliyun.com/repository/central,将此地址配置到setting.xml中即可。

转载于:https://www.cnblogs.com/flowerbirds/p/11270380.html