mvn增加本地jar包--在maven工程中加入iTextAsian支持

最近需要在工程中加入JasperReports,其中要用到把报表导出为pdf文件的功能。JasperReports内部使用iText来输出pdf文档,而iText对中文是放在单独的包iTextAsian.jar中,于是需要在工程中加入iTextAsian。

上网查找了好几个maven 2的repository,都没有收录iTextAsian,那怎么在自己的工程中加入iTextAsian呢?查找了好久,最后还是在AppFuse的论坛中得到Matt Raible的指点后解决了。主要步骤如下:
1.确保你已经在本地机器上创建了maven 2的本地repository
2.到SourceForge上iText的下载页面( http://sourceforge.net/project/showfiles.php?group_id=15255 )下载iTextAsian.jar,放到本地的某个目录里(比如C:\TEMP)
2.在命令行提示符下执行如下命令:
   mvn install:install-file -DgroupId=com.lowagie -DartifactId=itextasian -Dversion=1.0 -Dpackaging=jar -Dfile=c:\temp\itextasian.jar
  这行命令的意思是把该包安装到maven 2的本地repository中
3.在工程的pom.xml中的<dependencies>一节加入如下代码:
< dependency >
    
< groupId > com.lowagie </ groupId >
    
< artifactId > itextasian </ artifactId >
    
< version > 1.0 </ version >
</ dependency >
4.重新运行mvn war:war,打包后的工程的jar文件中已经包含了itextasian-1.0.jar了

如果细心一点,在运行mvn war:war时会发现maven尝试到工程的pom.xml文件中指定的repository下载itextasian-1.0.pom。由于这些repository并未收录iTextAsian,也就肯定找不到这个文件。尽管这不是什么大问题,还是有办法来避免:自己为本地repository中的iTextAsian编辑一个pom文件。步骤如下:
1.使用纯文本编辑工具录入如下内容:
< project >
  
< modelVersion > 4.0.0 </ modelVersion >
  
< groupId > com.lowagie </ groupId >
  
< artifactId > itextasian </ artifactId >
  
< name > itext </ name >
  
< version > 1.0 </ version >
  
< description > Asian language support for iText. </ description >
  
< url > http://www.lowagie.com/iText/ </ url >
</ project >
2.把这个文件保存到本地repository的com\lowagie\itextasian\1.0目录中,文件名为itextasian-1.0.pom即可

你可能感兴趣的:(maven,Install,mvn)