最近需要在工程中加入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了

-------------------------------到这步就可以了,就可以把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 2工程中加入iTextAsian支持(maven添加自定义jar包到本地仓库)的更多相关文章

  1. java工程中不能存在多个数据库连接jar包

    java工程中不能存在多个数据库连接jar包 比如存在mysql-java-connector.jar的,放入mssqlserver.jar就会产生冲突.只能存在一个类型的jar包.

  2. Maven 手动添加selenium JAR 包到本地仓库

    安装Maven后我们会在用户目录下发现.m2 文件夹.默认情况下,该文件夹下放置了Maven本地仓库.m2/repository. 在intellij中创建maven项目时,添加 selenium 依 ...

  3. Maven安装本地jar包到本地仓库

    Maven 安装 JAR 包到本地仓库的命令是: mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上 ...

  4. 配置maven环境变量并安装jar包到本地仓库

    1.下载maven安装包,解压,解压目录如下: 2.配置M2_HOME变量为上一步的路径: 3.配置PATH变量,添加%M2_HOME%\bin;  查看是否配置成功 mvn -v : 4.安装jar ...

  5. Maven 手动添加 JAR 包到本地仓库

    Maven 确确实实是个好东西,用来管理项目显得很方便,但是如果是通过 Maven 来远程下载 JAR 包的话,我宿舍的带宽是4兆的,4个人共用,有时候用 Maven 来远程下载 JAR 包会显得很慢 ...

  6. Maven命令安装jar包到本地仓库

    https://blog.csdn.net/moxiong3212/article/details/78767480 当需要的jar包在中央仓库找不到或者是想把自己生成的jar包放到的Maven仓库中 ...

  7. Maven 添加jar包到本地仓库

    一.使用Maven命令安装jar包 前提:在windows操作系统中配置好了Maven的环境变量,怎么配置请自己百度,这里不介绍,可参考https://jingyan.baidu.com/articl ...

  8. 使用maven命令安装jar包到本地仓库

    第三方jar包在开发工具中引入后编译没问题, 启动调试包括打包时会提示找不到jar包的错误.需要上传到maven仓库中,并在pom文件内引入. maven命令: 安装指定文件到本地仓库命令:mvn i ...

  9. maven手动导入jar包到本地仓库

    一.cmd进入maven的bin目录下(我的目录是E:\cloud_cms\apache-maven-3.5.4\bin) cd E:\cloud_cms\apache-maven-3.5.4\bin ...

随机推荐

  1. Scrum Meeting NO.3

    Scrum Meeting No.2 1.会议内容 之前的两天无法登录TFS服务器来生成燃尽图,再加上这种方式只能生成当日的燃尽图,我们决定改用excel生成燃尽图.(作为一个渣渣pm,我用了一下午才 ...

  2. 1.AKATSUKI

    ## 1.AKATSUKI - “晓”,日本漫画<火影忍者>及其衍生作品中的一个秘密组织. - 成立之初是为了给自己的国家带来和平. ## 2.团队成员 - 邱东宝 - 211606325 ...

  3. 读书笔记(chapter5)

    系统调用 5.1与内核通信 1.系统调用在用户空间进程和硬件设备之间添加一个中间层.作用有三个:它为用户空间提供了一种硬件的抽象接口:系统调用保证了系统的稳定和安全:系统调用是用户空间访问内核的唯一手 ...

  4. linux下php环境的装配以及php storm的链接

    linux下php环境的装配以及php storm的链接 本次安装在deepin系统下完成 一.安装LAMP组合 Linux+Apache+Mysql+php 直接命令 sudo apt-get in ...

  5. 在 Ubuntu16.04 中搭建 Spark 单机开发环境 (JDK + Scala + Spark)

    1.准备 本文主要讲述如何在Ubuntu 16.04 中搭建 Spark 2.11 单机开发环境,主要分为 3 部分:JDK 安装,Scala 安装和 Spark 安装. JDK 1.8:jdk-8u ...

  6. UART协议总结

    之前一直使用UART作为单片机之间以及和计算机的简单通信,但一直没有研究过该协议的内部原理.今天刚买了一个逻辑分析仪,于是使用该分析仪对UART数据进行分析,以便更好的理解UART协议原理. UART ...

  7. JavaBeans与内省(Introspector)

    JavaBean与Introspector 反射和内省操作很多时候都是在以后要做框架的时候作用非常大.    现在你学的是面向对象编程,即:你所写代码都能够找到对应的类或接口,找到具体的方法写出对应的 ...

  8. createobjbyreplace(str,arr) js替换方法保存

    <script> function createobjbyreplace(str,arr){ var len = arr.length; for(var i=0; i<len; i+ ...

  9. [菜鸟]HTTP 与 HTTPS 的区别

    HTTP 与 HTTPS 的区别 分类 编程技术 基本概念 HTTP(HyperText Transfer Protocol:超文本传输协议)是一种用于分布式.协作式和超媒体信息系统的应用层协议. 简 ...

  10. robotframework+Selenium2Library 模态窗口的处理

    原文链接:https://www.cnblogs.com/zuola/p/5750018.html   所谓模态窗口,就是指除非采取有效的关闭手段,用户的鼠标焦点或者输入光标将一直停留在其上的对话框. ...