使用maven搭建工程时,难免要加载大量的第三方的jar包、zip包比较少用,而maven的官网提供的jar往往不能满足需求,这时需要我们手动加载到我们本地或nexus私服的仓库中。
1.加载jar包到本地 (以加载saxon-dom-9.0.jar为例)
首先在工程的pom.xml文件中加入
- <dependency>
- <groupId>net.sf.saxon</groupId>
- <artifactId>saxon-dom</artifactId>
- <version>9.0</version>
- </dependency>
pom.xml配置完成后,再执行以下命令:
mvn install:install-file -DgroupId=net.sf.saxon -DartifactId=saxon-dom -Dversion=9.0 -Dpackaging=jar -Dfile=/home/ubuntu/saxon-dom-9.0.jar
说明:-Dfile指第三方jar的路径,其它的注意要确保maven命令中groupId、artifactId、version与pom.xml中的配置相同,-Dpackaging表示加载的文件类型
2.加载zip包到本地(以加载asdoc-3.2.0.3958-template.zip为例)
- <dependency>
- <groupId>com.adobe.flex.compiler</groupId>
- <artifactId>asdoc</artifactId>
- <version>3.2.0.3958</version>
- <classifier>template</classifier>
- </dependency>
pom.xml配置完成后,再执行以下命令:
mvn install:install-file -DgroupId=com.adobe.flex.compiler -DartifactId=asdoc -Dversion=3.2.0.3958 -Dclassifier=template -Dpackaging=zip -Dfile=/home/ubuntu/asdoc-3.2.0.3958-template.zip
说明:加载zip包与加载jar基本相同,注意加载文件的类型“-Dpackaging”
3.不用通过将jar包导入仓库
<!-- 添加junit支持,不用通过将jar包导入仓库的方式 -->
<dependency>
<groupId>junit-4.12</groupId>
<artifactId>junit-4.12</artifactId>
<version>4.12</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/webapp/WEB-INF/lib/junit-4.12.jar</systemPath>
</dependency>
但是打包时候需要加插件,不然不能 打包
<plugins>
<plugin>
<!-- 打包通过插件 。不然本地的包不能打包-->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>${basedir}/src/main/webapp/WEB-INF/lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
</plugins>
如果只添加一个两个jar包,还比较方便,但是如果WEB-INF/lib/下面有几十个jar包,逐个添加就会显得很繁琐。最好的方法是:
直接将lib 包build path 进项目,
在 配置 WEB-INF/lib/目录,让该目录下所有jar包都参与编译。这个配置在maven-compiler-plugin中。配置编译参 数<compilerArguments>,添加extdirs将jar包相对路径添加到配置中,如下:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <source>1.6</source> <target>1.6</target> <encoding>UTF-8</encoding> <compilerArguments> <extdirs>${basedir}\src\main\webapp\WEB-INF\lib</extdirs> </compilerArguments> </configuration> </plugin>
通过配置maven-compiler-plugin 的compilerArguments可以方便在使用Maven的时候,还大量使用以前使用Ant的大批WEB-INF/lib下面的历史遗留jar包。
4.最新版本的eclipse 2016 12 的可以 。直接将jar包导入仓库
总结:
最新版本的eclipse 2016 12 的可以 。直接 将jar包导入仓库
其次可以:
maven 导入第三方包
cmd
先进去包所在的位置
mvn install:install-file -Dfile=IKAnalyzer2012FF_u1.jar -DgroupId=IKAnalyzer -DartifactId=IKAnalyzer -Dversion=2012 -Dpackaging=jar