JAR包介绍大全用途作用详解JAVA

合集下载

【Java】class.jar和sources.jar及javadoc.jar三种jar包

【Java】class.jar和sources.jar及javadoc.jar三种jar包

【Java】class.jar和sources.jar及javadoc.jar三种jar包⼀、普及jar包知识 例如(举例⼦解释)类⽂件(.class) test-java-1.0-SNAPSHOT.jar⽂档包(API) test-java-1.0-SNAPSHOT-javadoc.jar资源包(code) test-java-1.0-SNAPSHOT-sources.jar⼆、使⽤⽅法1.类⽂件(.class) test-java-1.0-SNAPSHOT.jar 反编译,最暴⼒直接的⽅法,将jar包拖进IDEA⾥查看2.⽂档包(API) test-java-1.0-SNAPSHOT-javadoc.jar 解压该⽂件,打开index.html查看3.资源包 test-java-1.0-SNAPSHOT-sources.jar 拖进IDEA直接查看⼆、⽣成⽅法1.类⽂件(.class) test-java-1.0-SNAPSHOT.jar 直接使⽤maven打包⽣成即可2.⽂档包(API) test-java-1.0-SNAPSHOT-javadoc.jar 使⽤ maven-javadoc-plugin 插件⽣成javadoc.jar3.资源包 test-java-1.0-SNAPSHOT-sources.jar 使⽤ maven-source-plugin 插件⽣成sources.jar完整pom⽂件如下:1<?xml version="1.0" encoding="UTF-8"?>2<project xmlns="/POM/4.0.0"3 xmlns:xsi="/2001/XMLSchema-instance"4 xsi:schemaLocation="/POM/4.0.0 /xsd/maven-4.0.0.xsd">5<modelVersion>4.0.0</modelVersion>67<groupId>com.test</groupId>8<artifactId>test-java</artifactId>9<version>1.0-SNAPSHOT</version>10<dependencies>11<dependency>12<groupId>junit</groupId>13<artifactId>junit</artifactId>14<version>4.12</version>15<scope>compile</scope>16</dependency>17</dependencies>1819<build>2021<plugins>22<plugin>23<!-- Maven 编译插件24指定maven编译的jdk版本,如果不指定,25 maven3默认⽤jdk 1.5 maven2默认⽤jdk1.3 -->26<groupId>org.apache.maven.plugins</groupId>27<artifactId>maven-compiler-plugin</artifactId>28<version>3.8.1</version>29<configuration>30<!-- ⼀般⽽⾔,target与source是保持⼀致的,但是,有时候为了让程序能在其他版本的jdk中运⾏(对于低版本⽬标jdk,源代码中不能使⽤低版本jdk中不⽀持的语法),会存在target不同于source的情况 --> 31<source>1.8</source><!-- 源代码使⽤的JDK版本 -->32<target>1.8</target><!-- 需要⽣成的⽬标class⽂件的编译版本 -->33<encoding>UTF-8</encoding><!-- 字符集编码 -->34<verbose>true</verbose>35<showWarnings>true</showWarnings>36<fork>true</fork><!-- 要使compilerVersion标签⽣效,还需要将fork设为true,⽤于明确表⽰编译版本配置的可⽤ -->37<executable><!-- path-to-javac --></executable><!-- 使⽤指定的javac命令,例如:<executable>${JAVA_1_4_HOME}/bin/javac</executable> -->38<compilerVersion>1.3</compilerVersion><!-- 指定插件将使⽤的编译器的版本 -->39<meminitial>128m</meminitial><!-- 编译器使⽤的初始内存 -->40<maxmem>512m</maxmem><!-- 编译器使⽤的最⼤内存 -->41<!-- <compilerArgument>-verbose -bootclasspath ${java.home}\lib\rt.jar</compilerArgument>&lt;!&ndash; 这个选项⽤来传递编译器⾃⾝不包含但是却⽀持的参数选项 &ndash;&gt;-->42</configuration>43</plugin>4445<!-- ⽣成javadoc⽂档包的插件 -->46<plugin>47<groupId>org.apache.maven.plugins</groupId>48<artifactId>maven-javadoc-plugin</artifactId>49<version>3.2.0</version>50<executions>51<execution>52<id>attach-javadocs</id>53<goals>54<goal>jar</goal>55</goals>56</execution>57</executions>58</plugin>5960<!-- ⽣成sources源码包的插件 -->61<plugin>62<groupId>org.apache.maven.plugins</groupId>63<artifactId>maven-source-plugin</artifactId>64<version>3.2.1</version>65<configuration>66<attach>true</attach>67</configuration>68<executions>69<execution>70<!-- 在package阶段之后会执⾏源代码打包 -->71<phase>package</phase>72<goals>73<goal>jar-no-fork</goal>74</goals>75</execution>76</executions>77</plugin>78</plugins>79</build>8081</project>配置好插件后,使⽤maven package命令既能在target⽬录中查看到三个jar包 命令:mvn package如果要把三种jar包安装到本地仓库 命令:mvn install如果要把三种jar包发布到远程仓库 命令:mvn deploy。

java开发常用的jar包的作用解释

java开发常用的jar包的作用解释

java开发常用的jar包的作用解释转载自:/chaod5659/article/details/8250845 java开发中主要用到的jar包描述commons-io.jar:可以看成是java.io的扩展,用来帮助进行IO功能开发.它包含三个主要的领域:Utilityclasses-提供一些静态方法来完成公共任务.Filters-提供文件过滤器的各种实现.Streams-提供实用的Stream,reader与writer实现.commons-beanutils.jar:提供对Java反射和自省API的包装,主要提供了对于JavaBean进行各种操作。

commons-digester.jar:它能方便地将XML文档所定义的元素转化为JAVA对象,其实它的用法有点象栈(当然内在的原理就是那个古老的东西,只是提供了更高一层的封装)。

commons-lang.jar:它扩展了标准ngAPI,增加了字符串操作方法、基本数值方法、对象反射、创建和串行化以及System属性。

它还包含一个可继承的enum类型、对多种嵌套的Exception 类型的支持、对java.util.Date的增强以及用于构建方法的实用程序,例如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。

ArrayUtils–用于对数组的操作,如添加、查找、删除、子数组、倒序、元素类型转换等;BitField–用于操作位元,提供了一些方便而安全的方法;BooleanUtils–用于操作和转换boolean或者Boolean及相应的数组;CharEncoding–包含了Java环境支持的字符编码,提供是否支持某种编码的判断;CharRange–用于设定字符范围并做相应检查;CharSet–用于设定一组字符作为范围并做相应检查;CharSetUtils–用于操作CharSet;CharUtils–用于操作char值和Character对象;ClassUtils–用于对Java类的操作,不使用反射;ObjectUtils–用于操作Java对象,提供null安全的访问和其他一些功能;RandomStringUtils–用于生成随机的字符串;SerializationUtils–用于处理对象序列化,提供比一般Java序列化更高级的处理能力;StringEscapeUtils–用于正确处理转义字符,产生正确的Java、JavaScript、HTML、XML和SQL代码;StringUtils–处理String的核心类,提供了相当多的功能;SystemUtils–在ng.System基础上提供更方便的访问,如用户路径、Java版本、时区、操作系统等判断;Validate–提供验证的操作,有点类似assert断言;WordUtils–用于处理单词大小写、换行等。

java开发常用jar包

java开发常用jar包

java开发常用jar包mail.jar与activation.jar里面包含了activation.jar和mail.jar两个包.通过里面的类的调用便可以达到发送电子邮件的目的commons-beanutils.jarApache Commons包中的一个,包含了一些Bean工具类类。

必须使用的jar包。

commons-collections.jarApache Commons包中的一个,包含了一些Apache开发的集合类,功能比java.util.*强大commons-lang.jarApache Commons包中的一个,包含了一些数据类型工具类,是ng.*的扩展。

必须使用的jar包。

commons-logging.jar:Apache Commons包中的一个,包含日志功能commons-io.jarApache Commons包中的一个,java.io.*的扩展,输入输出,支持文件上传commons-fileupload.jarApache Commons包中的一个,是一个通过Http接收上传的文件并处理结果文件的库dom4j-1.4.jar 和jaxen-1.1.1.jar是一个Java的XML API,类似于jdom,用来读写XML文件的。

Hibernate使用dom4j解析XML配置文件和XML映射元文件。

必需的。

ehcache-1.2.jarHibernate可以使用不同cache缓存工具作为二级缓存。

EHCache是缺省的cache缓存工具。

如果没有其它的可选缓存工具,则为必需的。

hibernate3.jarhibernate3的核心类库。

itext.jar是用于生成PDF文档的一个java类库。

通过iText不仅可以生成PDF或rtf的文档,而且可以将XML、Html文件转化为PDF文件。

iTextAsian.jaritext中关于亚洲编码的类库,在这里用于中文字体的输入。

Java之POI各Jar包作用

Java之POI各Jar包作用

Java之POI各Jar包作⽤⼀、⽬录结构 ⽬录结构如下:⼆、详细介绍Maven artifactId Prerequisites JAR Notespoi-excelant poi,poi-ooxml poi-excelant-version.jar⽤于读取表格、写⼊表格等⼀系列操作表格所⽤到的包 Component Map The Apache POI distribution consists of support for many document file formats. This support is provided in several Jar files. Not all of the Jars are needed for every format. The following tables show the relationships between POI components, Maven repository tags, and the project's Jar files.Component Application type Maven artifactId NotesOLE2 Filesystem poi Required to work with OLE2 / POIFS based filesOLE2 Property Sets poiExcel XLS poi For HSSF only, if common SS is needed see belowPowerPoint PPT poi-scratchpadWord DOC poi-scratchpadVisio VSD poi-scratchpadPublisher PUB poi-scratchpadOutlook MSG poi-scratchpadDDF Escher common drawingspoiHWMF WMF drawings poi-scratchpadOOXML poi-ooxml plus either poi-ooxml-schemas orooxml-schemas and ooxml-securitySee notes below for differences between these optionsExcel XLSX poi-ooxml PowerPoint PPTX poi-ooxml Word DOCX poi-ooxml Visio VSDX poi-ooxmlPowerPoint PPT and PPTX poi-scratchpad and poi-ooxml SL code is in the core POI jar, but implementations are in poi-scratchpad andpoi-ooxml.Excel XLS and XLSX poi-ooxml WorkbookFactory and friends all require poi-ooxml, not just core poi This table maps artifacts into the jar file name. "version-yyyymmdd" is the POI version stamp. You can see what the latest stamp is on the.Maven artifactId Prerequisites JARpoi, , ,poi-version-yyyymmdd.jarpoi-scratchpad poi-scratchpad-version-yyyymmdd.jarpoi-ooxml,poi-ooxml-version-yyyymmdd.jarpoi-ooxml-schemas poi-ooxml-schemas-version-yyyymmdd.jarpoi-examples, ,poi-examples-version-yyyymmdd.jarooxml-schemasooxml-securityFor signing: , , , Note:Apache commons-collections4 was added as a dependency in POI 3.15 beta 3. poi-ooxml requires poi-ooxml-schemas. This is a substantially smaller version of the ooxml-schemas jar (ooxml-schemas-1.3.jar for POI 3.14 or later, ooxml-schemas-1.1.jar for POI 3.7 up to POI 3.13, ooxml-schemas-1.0.jar for POI 3.5 and 3.6). The larger ooxml-schemas jar is only required for development. Similarly, the ooxml-security jar, which contains all of the classes relating to encryption and signing, is normally onlyrequired for development. A subset of its contents are in poi-ooxml-schemas. This JAR is ooxml-security-1.1.jar for POI 3.14 onwards and ooxml-security-1.0.jar prior to that. The OOXML jars require a stax implementation, but now that Apache POI requires Java 6, that dependency is provided by the JRE and no additional stax jars are required. The OOXML jars used to require DOM4J, but the code has now been changed to use JAXP and no additional dom4j jars are required. By the way, look at this if you have problems when using a non-Oracle JDK. The ooxml schemas jars are compiled with 2.3, and so can be used at runtime with any version of XMLBeans from 2.3 or newer. Wherever possible though, we recommend that you use XMLBeans 2.6.0 with Apache POI, and that is the version now shipped in the binary release packages. 总结:按照需要导⼊jar包及相关依赖jar包。

java中常用的几个JAR类库包说明

java中常用的几个JAR类库包说明

commo‎n s-di‎g este‎r.jar‎Dig‎e ster‎基于规则的‎X ML文档‎解析,主要‎用于XML‎到Java‎对象的映射‎.c‎o mmon‎s-bea‎n util‎s.jar‎提供对‎J ava ‎反射和自省‎A PI的包‎装.‎a spec‎t jwea‎v er.j‎a r用‎于在Spr‎i ng 2‎.0中集成‎A spec‎t J As‎p ectJ‎LTW织‎入器‎o gnl.‎j ar‎O GNL是‎O bjec‎t-Gra‎p h Na‎v igat‎i on L‎a ngua‎g e的缩写‎,它是一种‎功能强大的‎表达式语言‎(Expr‎e ssio‎n Lan‎g uage‎,简称为E‎L),通过‎它简单一致‎的表达式语‎法,可以存‎取对象的任‎意属性,调‎用对象的方‎法,遍历整‎个对象的结‎构图,实现‎字段类型转‎化等功能。

‎它使用相同‎的表达式去‎存取对象的‎属性。

‎hibe‎r nate‎2依赖的一‎些包h‎i bern‎a te2.‎j ar‎H iber‎n ate的‎库,没有什‎么可说的,‎必须使用的‎j ar包‎cgl‎i b-as‎m.jar‎:CG‎L IB库,‎H iber‎n ate用‎它来实现P‎O字节码的‎动态生成,‎非常核心的‎库,必须使‎用的jar‎包d‎o m4j.‎j ar: ‎do‎m4j是一‎个Java‎的XML ‎A PI,类‎似于jdo‎m,用来读‎写XML文‎件的。

do‎m4j 是一‎个非常非常‎优秀的Ja‎v a XM‎L API‎,具有性能‎优异、功能‎强大和极端‎易用使用的‎特点,同时‎它也是一个‎开放源代码‎的软件,可‎以在Sou‎r ceFo‎r ge上找‎到它。

在I‎B M de‎v elop‎e rWor‎k s上面可‎以找到一篇‎文章,对主‎流的Jav‎a XML‎API进‎行的性能、‎功能和易用‎性的评测,‎d om4j‎无论在那个‎方面都是非‎常出色的。

Java打包工具jar包详解

Java打包工具jar包详解

Java打包⼯具jar包详解Java打包⼯具是Java开发⼯具中⽐较常⽤的⼀种,代码重新打包⼯具jarjar可以帮助你将其它⽤到的java库打包并嵌⼊到你⾃⼰的项⽬jar包中。

这样做的原因有:当你发布项⽬的时候,把⽤到的库打包进现有项⽬jar包,可以让发布的这个jar包不⽐依赖于其它项⽬的jar包;当你所⽤到的java库升级了以后,它所新发布的jar包可能和你现存的项⽬不匹配,为了保持项⽬的代码稳定性,你可以把编写代码时所⽤到的依赖jar包,全部打包进现在的项⽬jar包,以避免出现这个问题。

jarjar可以通过Ant任务的⽅式使⽤,也可以单独地在命令⾏下使⽤。

打包代码时,如果你要重命名某些依赖包的名字的时候,jarjar会调⽤字节码转换(通过ASM)来更新代码,并⾃动做好其他⼯作。

以Ant任务的形式使⽤jar我们现存的Ant任务⾥可以⽤jar任务来打包代码,⽐如:<target name="jar" depends="compile"><jar jarfile="dist/example.jar"><fileset dir="build/main"/></jar></target>为了使⽤jarjar⼯具,我们创建⼀个叫jarjar的任务,由于JarJarTask是Ant标准任务Jar的⼦类,所以如果你不需要使⽤jarjar的特有功能的话,完全可以像这样调⽤jarjar⼯具:就像标准的”jar”任务⼀样,可以通过”zipfileset”元素来包含其它jar包。

但是仅仅包含其它jar包并不能让你远离“jar包陷阱”,因为你所依赖的jar包中的类名还是没有改变,仍然有可能和其它版本的jar包⾥的类名相同,产⽣冲突。

为了重命名类名,JarJarTask引⼊了⼀个新元素”rule”。

JAR包介绍大全用途作用详解JAVA

JAR包介绍大全用途作用详解JAVA

JAR包介绍大全用途作用详解JAVAJAR(Java Archive)是Java的一种标准压缩文件格式,它是一种将多个Java类文件、资源文件、配置文件和元数据文件打包成一个文件的方式。

JAR包的使用具有很多作用和用途,下面将详细介绍。

1. 代码打包和发布:通过将Java类文件打包成JAR包,可以方便地将整个项目的代码进行打包和发布。

这样可以简化代码的传输、分发和部署。

2. 代码模块化:JAR包可以将一组相关的Java类打包成一个模块,便于代码的管理和维护。

不同的模块可以根据需要进行组合,提高代码的可复用性和可扩展性。

3.应用程序部署:将应用程序的所有依赖的类和资源文件统一打包到一个JAR包中,方便进行部署和发布。

可以减少部署过程中的错误和问题。

4. 库文件管理:JAR包可以用来管理和分发Java库文件。

开发者可以将常用的库文件打包成JAR包,并在其他项目中使用。

5. 类库扩展:在Java中,可以通过类路径(CLASSPATH)来指定需要加载的类库。

而JAR包可以通过设置类路径来扩展Java的类库。

只需将JAR包加入到类路径中,就可以在代码中使用其中的类和方法。

6.版本管理:JAR包可以用来管理和分发不同版本的软件。

通过使用不同的JAR包命名规则或目录结构,可以区分不同版本的软件,方便用户选择特定版本的功能和功能。

7.防止类文件冲突:当使用多个第三方类库时,可能会发生类文件冲突的情况。

通过将每个类库打包成一个JAR包,并且每个类库中的类在包的结构中唯一,可以避免类文件冲突的问题,保证程序的正确运行。

8. 加载器和类加载:在Java中,类加载器负责将类文件加载到Java虚拟机中。

而JAR包是可以被类加载器加载的,可以通过类加载器的机制来加载JAR包中的类。

9. Java application扩展:JAR包可以作为Java应用程序的扩展,可以在运行时动态地加载和使用JAR包中的类和方法。

这种机制可以实现插件式的应用程序设计。

java项目打包成jar包和war包有什么区别

java项目打包成jar包和war包有什么区别

java项目打包成jar包和war包有什么区别在Java中,将项目打包成JAR(Java Archive)包和WAR(Web Archive)包是常见的部署方式。

这两种包的主要区别在于它们的用途和部署环境。

1. JAR包(Java Archive):JAR包是一种用于打包Java类、资源文件和库文件的归档文件格式。

JAR包主要用于打包和分发独立的Java应用程序、Java库和组件。

JAR包可以包含Java代码、字节码、配置文件、资源文件和其他依赖的类库文件。

JAR包可以通过Java虚拟机(JVM)直接执行,因此适用于命令行工具、桌面应用程序和独立的Java应用。

2. WAR包(Web Archive):WAR包是一种用于打包和分发Web应用程序的归档文件格式。

WAR包主要用于部署Java Web应用程序,例如基于Java的Web应用框架(如Java Servlet、JavaServer Pages(JSP)和JavaServer Faces (JSF))。

WAR包可以包含Web应用程序的所有内容,包括Java类、JSP页面、HTML、CSS、JavaScript、配置文件、静态资源(图像、样式表等)以及依赖的类库文件。

WAR包可以部署到Java Web服务器(如Apache Tomcat、Jetty、WebLogic和WebSphere)中,以提供Web应用程序的服务。

总结:JAR包主要用于独立的Java应用程序和库的分发,而WAR包主要用于Java Web应用程序的部署。

选择JAR包还是WAR包取决于你的项目类型和部署需求。

如果你开发的是一个独立的Java应用程序,你可以将其打包为JAR包。

如果你开发的是一个Java Web应用程序,你应该将其打包为WAR包,并将其部署到Java Web服务器中。

java开发常用的jar包的作用解释

java开发常用的jar包的作用解释

java开发常用的jar包的作用解释转载自:/chaod5659/article/details/8250845 java开发中主要用到的jar包描述commons-io.jar:可以看成是java.io的扩展,用来帮助进行IO功能开发.它包含三个主要的领域:Utilityclasses-提供一些静态方法来完成公共任务.Filters-提供文件过滤器的各种实现.Streams-提供实用的Stream,reader与writer实现.commons-beanutils.jar:提供对Java反射和自省API的包装,主要提供了对于JavaBean进行各种操作。

commons-digester.jar:它能方便地将XML文档所定义的元素转化为JAVA对象,其实它的用法有点象栈(当然内在的原理就是那个古老的东西,只是提供了更高一层的封装)。

commons-lang.jar:它扩展了标准ngAPI,增加了字符串操作方法、基本数值方法、对象反射、创建和串行化以及System属性。

它还包含一个可继承的enum类型、对多种嵌套的Exception 类型的支持、对java.util.Date的增强以及用于构建方法的实用程序,例如自动生成toString()的结果、自动实现hashCode()和equals()方法、数组操作、枚举、日期和时间的处理等等。

ArrayUtils–用于对数组的操作,如添加、查找、删除、子数组、倒序、元素类型转换等;BitField–用于操作位元,提供了一些方便而安全的方法;BooleanUtils–用于操作和转换boolean或者Boolean及相应的数组;CharEncoding–包含了Java环境支持的字符编码,提供是否支持某种编码的判断;CharRange–用于设定字符范围并做相应检查;CharSet–用于设定一组字符作为范围并做相应检查;CharSetUtils–用于操作CharSet;CharUtils–用于操作char值和Character对象;ClassUtils–用于对Java类的操作,不使用反射;ObjectUtils–用于操作Java对象,提供null安全的访问和其他一些功能;RandomStringUtils–用于生成随机的字符串;SerializationUtils–用于处理对象序列化,提供比一般Java序列化更高级的处理能力;StringEscapeUtils–用于正确处理转义字符,产生正确的Java、JavaScript、HTML、XML和SQL代码;StringUtils–处理String的核心类,提供了相当多的功能;SystemUtils–在ng.System基础上提供更方便的访问,如用户路径、Java版本、时区、操作系统等判断;Validate–提供验证的操作,有点类似assert断言;WordUtils–用于处理单词大小写、换行等。

java开发常用jar包

java开发常用jar包
stax-api-1.0.1.jar 解析XML
struts2-core-2.0.14.jar struts2核心jar
struts2-spring-plugin-2.0.6.jar struts2整合Spring所需jar
taglibs-datetime.jar Apache开源组织提供标签库,用于格式化日期。
db2jcc.jar java连接DB2所需jar
db2jcc_license_cu.jar java连接DB2所需jar
dom4j-1.6.1.jar 解析XML
ehcache-1.2.4.jar hibernate的二级缓存如果用ehcache的时候需要此jar包
emf.jar 基于Eclipse的模型框架
wsdl4j-1.5.1.jar Axis运行所需要的组件包
activation.jar JAF框架的jar包
annotations-api.jar 使用注解所需jar
ant.jar 用于自动化调用程序完成项目的编译,打包,测试等
aopalliance-1.0.jar 支持Spring AOP
ezmorph-1.0.6.jar 使用JSON所需的jar包
FastInfoset-1.2.2.jar 使用WebService所需的jar包
freemarker-2.3.8.jar Strus2支持的一种表现层框架
geronimo-activation_1.1_spec-1.0.2.jar Apache Geronimo所带jar包,
taglibs-mailer.jar 用于发送邮件
taglibs-string.jar Apache开源组织提供标签库,用于对String的操作。

JAR命令&JAR包详解

JAR命令&JAR包详解

JAR命令&JAR包详解JAR包是Java中所特有一种压缩文档,其实大家就可以把它理解为.zip包。

当然也是有区别的,JAR包中有一个META-INF\MANIFEST.MF文件,当你找成JAR包时,它会自动生成。

JAR包是由JDK安装目录\bin\jar.exe命令生成的,当我们安装好JDK,设置好path路径,就可以正常使用jar.exe命令,它会用lib\tool.jar工具包中的类。

这些细节就不用管它了。

让我们看看它怎么么使用吧:<!--=================================================-->一.jar命令参数:jar命令格式:jar {c t x u f }[ v m e 0 M i ][-C 目录]文件名...其中{ctxu}这四个参数必须选选其一。

[v f m e 0 M i ]是可选参数,文件名也是必须的。

-c 创建一个jar包-t 显示jar中的内容列表-x 解压jar包-u 添加文件到jar包中-f 指定jar包的文件名-v 生成详细的报造,并输出至标准设备-m 指定manifest.mf文件.(manifest.mf文件中可以对jar包及其中的内容作一些一设置) -0 产生jar包时不对其中的内容进行压缩处理-M 不产生所有文件的清单文件(Manifest.mf)。

这个参数与忽略掉-m参数的设置-i 为指定的jar文件创建索引文件-C 表示转到相应的目录下执行jar命令,相当于cd到那个目录,然后不带-C执行jar命令<!--==========================================-->二.jar使用范例:(1)创建jar包jar cf hello.jar hello 利用test目录生成hello.jar包,如hello.jar存在,则覆盖(2)创建并显示打包过程jar cvf hello.jar hello 利用hello目录创建hello.jar包,并显示创建过程例:E:\>jar cvf hello.jar hello标明清单(manifest)增加:hello/(读入= 0) (写出= 0)(存储了 0%)增加:hello/TestServlet2.class(读入= 1497) (写出= 818)(压缩了 45%)增加:hello/HelloServlet.class(读入= 1344) (写出= 736)(压缩了 45%)增加:hello/TestServlet1.class(读入= 2037) (写出= 1118)(压缩了 45%)(3)显示jar包jar tvf hello.jar 查看hello.jar包的内容指定的jar包必须真实存在,否则会发生FileNoutFoundException。

【Java基础】Jar包结构结构分析和操作具体解释

【Java基础】Jar包结构结构分析和操作具体解释

【Java基础】Jar包结构结构分析和操作具体解释作者:郭嘉邮箱:allenwells@博客:github:⼀ JAR包结构分析JAR(Java Archive FIle)Java归档⽂件,是Java标准的⽂档格式,是⼀个或多个Java字节码⽂件的打包压缩⽂件。

採⽤常见的ZIP压缩算法,和ZIP⽂件⼗分相似,能够直接解压。

JAR⽂件主要⽤来压缩和公布字节码⽂件,并且还⽤于部署和封装库、组件和插件程序。

并且能够被像编辑器和JVM这种⼯具直接使⽤。

1.1 JAR包结构JAR包的结构例如以下图所看到的:1.2 MANIFEST.MF属性从上图能够看出,JAR包⽐普通zip⽂件多了⼀个META-INF⽂件夹,该⽂件夹下包括了⼀个MANFEST.MF⽂件。

1.2.1 ⼀般属性1. Manifest-Version⽤来定义manifest⽂件的版本号,⽐如:Manifest-Version: 1.02. Created-By声明该⽂件的⽣成者,⼀般该属性是由jar命令⾏⼯具⽣成的。

⽐如:Created-By: Apache Ant 1.5.13. Signature-Version定义jar⽂件的签名版本号4. Class-Path应⽤程序或者类装载器使⽤该值来构建内部的类搜索路径1.2.2 应⽤程序相关属性1. Main-Class定义jar⽂件的⼊⼝类。

该类必须是⼀个可运⾏的类,⼀旦定义了该属性就可以通过 java -jar x.jar来运⾏该jar⽂件。

1.2.3 ⼩程序(Applet)相关属性1. Extendsion-List该属性指定了⼩程序须要的扩展信息列表。

列表中的每⼀个名字相应以下的属性2. -Extension-Name3. -Specification-Version4. -Implementation-Version5. -Implementation-Vendor-Id6. -Implementation-URL1.2.4 扩展标识属性1. Extension-Name该属性定义了jar⽂件的标识,⽐如Extension-Name: Struts Framework。

jar文件

jar文件

#jar文件1. 简介JAR(Java ARchive)文件是Java平台上一种常见的文件格式,它是一种压缩文件,通常用于将Java类文件、资源文件和元数据打包到一个单独的文件中。

JAR文件可以方便地在Java应用程序之间共享和传输,同时还可以简化应用程序的部署和分发过程。

2. JAR文件的创建2.1 使用命令行工具在命令行中使用Java Development Kit(JDK)自带的jar命令可以创建JAR文件。

以下是一些常用的jar命令:•jar cvf <jar文件名> <源文件>:创建一个新的JAR文件,并将指定的源文件添加到JAR文件中。

•jar xvf <jar文件名>:解压缩指定的JAR文件。

•jar uvf <jar文件名> <源文件>:将指定的源文件添加到现有的JAR文件中。

•jar tvf <jar文件名>:显示JAR文件中的内容。

2.2 使用集成开发环境除了命令行工具,常用的集成开发环境(IDE)如Eclipse和IntelliJ IDEA等也提供了创建和管理JAR文件的功能。

通常可以通过IDE菜单中的导出或打包选项来创建JAR文件。

3. JAR文件的结构一个JAR文件是一个ZIP格式的压缩包,它通常包含以下几个方面的内容:•META-INF目录:该目录存储了关于JAR文件的元数据信息,如清单文件(MANIFEST.MF)和签名文件(*.SF)等。

•.class文件:这些是Java编译后的字节码文件,包含了程序的实际执行代码。

•资源文件:包括图像文件、配置文件、文本文件等,用于程序的非代码资源。

•库文件:如果程序依赖于外部库,那么这些库文件也可以添加到JAR文件中。

4. JAR文件的应用4.1 执行JAR文件使用Java虚拟机(JVM)执行JAR文件是最常见的用途之一。

可以使用以下命令来运行JAR文件:java -jar <jar文件名>4.2 分发和部署应用程序将应用程序打包成JAR文件可以方便地进行分发和部署。

javaweb项目中常用的jar包详解

javaweb项目中常用的jar包详解

javaweb项目中常用的jar包详解(1) Activation-1.1.jar:与 javamail 相关的 jar 包,使用 javamail 时应与 mail.jar —起加入到lib 中去,具体负责mail 的数据源和类型等。

(2) Antlr-2.7.6.jar:是ant 编译的包,在工程中不用添加可以删除。

ANother Tool for Language Recog niti on(an tlr)⑶asm.jar:是hibernate 的包,使用这个包生成库增强类,必须要。

⑷ aspectjweaver.jar:这是 Spring AOP 所要用到的包.(5)bcprov-jdk.jar: JAVA 开发CA 认证使用Java 开发和信息安全相关的程序 (6)Cglib.jar: CGLIB 字节码解释器如果使用"cglib ”则必要⑺commons-beanutils.jar: BeanUtils 就是其中的一个,用于处理JavaBeans 。

它利用 Java 的反射机制,从动态的生成对bean 的getter 和setter 的调用代码,到模拟创建一个动态的bea n ,等等。

(8) Commons-codec.jar:Common 项目中用来处理常用的编码方法的工具类包,例如 SHA1 MD5 Base64, URL Soundx 等等。

[1] 不仅是编码,也可用于解码。

(9) Commons-collections.ja r:为 Java 标准的 Collections API提供了相当好的补充。

在此基础上对其常用的数据结构操作进行了很好的封装、抽象和补充。

保证性能的同时大大简化代码。

(10) Commons-dbcp.jar:主流数据库连接池之一 (DBCP 、c3p0、proxool),单独使用 DBCP 需要使用 com mon s-db pc.jar 、com mon s-collecti on s.jar、com mons-po ol.jar 三个包(11) Common s-digester.jar: com mon s 中的 digester 是非常优秀的 xml 解析工具,这个工具提供了从 xml->javabean 的映射。

java中各种Jar包用途

java中各种Jar包用途

sitemesh-2.4.2.jar
slf4j-api-1.6.4.jar
slf4j-log4j12-1.6.4.jar
snmp4j-2.3.0.jar spring-aop-3.2.0.RELEASE.jar spring-beans-3.2.0.RELEASE.jar spring-context-3.2.0.RELEASE.jar spring-context-support-3.2.0.RELEASE.jar spring-core-3.2.0.RELEASE.jar spring-data-commons-core-1.4.0.RELEASE.jar spring-data-jpa-1.2.0.RELEASE.jar spring-expression-3.2.0.RELEASE.jar spring-jdbc-3.2.0.RELEASE.jar spring-jms-3.2.0.RELEASE.jar spring-orm-3.2.0.RELEASE.jar spring-test-3.2.0.RELEASE.jar spring-tx-3.2.0.RELEASE.jar spring-web-3.2.0.RELEASE.jar spring-webmvc-3.2.0.RELEASE.jar spymemcached-2.8.1.jar stax2-api-3.1.1.jar taobao-sdk-java-base-20110909.jar Thumbnailator-0.3.10.jar validation-api-1.0.0.GA.jar weka.jar webbit-0.4.6.jar woodstox-core-asl-4.1.2.jar wsdl4j-1.6.2.jar xalan-2.7.1.jar xercesImpl-2.9.1.jar xml-apis-1.3.04.jar xml-apis-ext-1.3.04.jar xmlgraphics-commons-1.2.jar xml-resolver-1.2.jar xmlschema-core-2.0.2.jar

Java JAR 和Java API文档生成工具

Java JAR 和Java API文档生成工具
@version @see @param @return @excepti on
用于
对类的说明 对类的说明
作用
标明开发该类模块的作者 标明该类模块的版本
对类、变量、方法的说 参考转向,也就是相关主题。 明 对类、变量、方法进行说明 对方法的说明 对方法的说明 对方法的说明 对方法中某参数的说明 对方法返回值的说明 对方法可能抛出的异常进行说 明
1.意义: (1)编写技术文档的重要性。 (2)保证程序代码与软件技术文档一致。
不管是先修改代码,还是先修改文档,对各种记录的管理
都是一件麻烦事。 而且,二者在改动上的一致性、实时性还很难得到保证。
2.JAVADOC作用
根据我们在JAVA文件中写的注释,来生成对应的HTML文档
帮助页面。 这些HTML 文件描述了Java类文件中的类、变量、成员函数 等的定义。 所有Java类库的API HTML 文件都可以由此程序创建。
……//省略部分 /** * <p>Description: 设 置 数 据 分 页 每 页 显 示 的 记 录 数 </p> * @param ct int * @since 2003/04/24 Update *
*/
public void setpage_rs_count(int ct){ this.page_rs_count=ct; } ……//省略部分
2、JAR作用及开发目的
(1)首先,它与平台无关,并且兼容性好。 (2)它使用户可将多个java小应用程序合并为一个文件作为 单个的简单 HTTP事务下载到浏览器中,从而大大提高浏览 速度 (3)它还提供对applet作者的认证,这只要对JAR进行数字签 名便可。
3、 应用JAR的方法

Java关于jar包的知识详解

Java关于jar包的知识详解

Java关于jar包的知识详解在学习jar包之前,要先弄懂Java包,以及关于Java包的相关概念。

⼀、包为了更好地组织类,Java提供了包机制。

包是类的容器,⽤于分隔类名空间。

如果没有指定包名,所有的⽰例都属于⼀个默认的⽆名包。

格式为:package pkg1[.pkg2[.pkg3…]];代码实例:package .zhouzhou;//包名⼀定要由⼩写字母组成public class Lession1 {public static void main(String[] args) {System.out.println("这是我创建的第⼀个在包下的⽂件");}}注意事项:1.程序中如果有package语句,该语句⼀定是源⽂件中的第⼀条可执⾏语句;2.package语句的前⾯只能有注释或空⾏;3.⼀个⽂件中最多只能有⼀条package语句;4.包的名字有层次关系,各层之间以点分隔(上例中的“.zhouzhou”);(图:演⽰)5.包层次必须与Java开发系统的⽂件系统结构相同;6.通常包名中全部⽤⼩写字母;7.当使⽤包说明时,程序中⽆需再引⽤(import)同⼀个包或该包的任何元素;8.import语句只⽤来将其他包中的类引⼊当前名字空间中。

⽽当前包总是处于当前名字空间中。

* ⽰例演⽰:1)编译的时候⽤:(我的⽂件是存在E盘了)e:\>javac -d . Lession1.java // 可以⽣成对应的⽂件夹结构2)执⾏的时候,要执⾏全类名java .zhouzhou.Lession1注意事项说明:1.同⼀个源⽂件中的类,都在同⼀个包中,同⼀个包中的内容互相访问,不⽤导包;2.导包的时候以下两句;import .zhouzhou.beans.*;import erInfo;这两句,只在编译的时候有后者稍快⼀点,在运⾏的时候没有任何区别3.如果要设置classpath ,要设置到最外层的⽂件夹所在的⽬录上,⽐如:package .zhouzhou;set classpath=cn的所在的⽂件夹名称4.对于⽗包和⼦包,在使⽤上没有任何关系,只要不在⼀个包中,引⽤的时候就必须导包;5.以后在开发中,如果出现⼀个类名找不到的情况,主要以下原因:1)类名写错了2)包名错了3)classpath 设置错了6.对于 ng 包下的类,使⽤的时候可以不导包。

jar包的使用方法

jar包的使用方法

jar包的使用方法一、什么是jar包在Java开发中,jar包(Java Archive)是一种用于存放Java类、资源文件和元数据的文件格式。

它是一种压缩文件,通常以.jar作为文件扩展名。

jar包可以将多个Java文件打包成一个文件,方便程序的分发和部署。

二、安装jar包安装jar包非常简单,只需要将jar包文件复制到Java项目的classpath路径下即可。

classpath是Java程序搜索类和资源文件的路径。

一般情况下,可以将jar包放置在项目的lib目录下,然后在项目的构建配置中添加jar包的依赖项。

三、使用jar包使用jar包可以通过两种方式:命令行方式和集成开发环境(IDE)方式。

1. 命令行方式在命令行中使用jar包,可以通过Java命令来执行jar包中的主类。

假设我们有一个名为example.jar的jar包,其中包含一个名为com.example.Main的主类。

可以使用以下命令执行该jar包:```java -jar example.jar```2. 集成开发环境(IDE)方式在集成开发环境中,可以通过添加jar包的依赖项来使用它。

不同的IDE有不同的配置方法,以Eclipse为例,可以按照以下步骤添加jar包的依赖项:- 右击项目,选择"Properties";- 在弹出的对话框中,选择"Java Build Path";- 在"Libraries"选项卡中,点击"Add JARS..."按钮;- 选择jar包文件并点击"OK"按钮。

四、使用示例下面以一个简单的示例来演示如何使用jar包。

假设我们有一个Java项目,其中包含两个类:Main.java和Util.java。

Util.java提供了一个用于计算两个整数之和的方法add()。

现在我们希望将这两个类打包成一个jar包,并在另一个项目中使用它。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

J2EE的部分jar的作用:
activation.jar:与javaMail有关的jar包,使用javaMail时应与mail.jar一起加入到lib中去,具体负责mail的数据源和类型等
ajaxtags-1.2-beta3.jar:ajax提供的标签库,使用户能像使用jsp普通标签一样使用ajax
实际上Hibernate自己也实现了一个非常非常简单的数据库连接池,加上上面3个,你实际上可以在Hibernate上选择4种不同的数据库连接池,选择哪一个看个人的偏好,不过DBCP可能更通用一些。另外强调一点,如果在EJB中使用Hibernate,一定要用App Server的连接池,不要用以上4种连接池,否则容器管理事务不起作用。
c3p0.jar:
C3PO是一个数据库连接池,Hibernate可以配置为使用C3PO连接池。如果你准备用这个连接池,就需要这个jar包。
proxool.jar:
也是一个连接池,同上。 源自commons-pool.jar, commons-dbcp.jar:
DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP。
junit.jar:
Junit包,当你运行Hibernate自带的测试代码的时候需要,否则就不用。
xalan.jar, xerces.jar, xml-apis.jar:
Xerces是XML解析器,Xalan是格式化器,xml-apis实际上是JAXP。一般App Server都会带上,JDK1.4也包含了解析器,不过不是Xerces,是Crimson,效率比较差,不过Hibernate用XML只不过是读取配置文件,性能没什么紧要的,所以也是多余的。
这里主要介绍的是Hibernate使用到的.jar
Hibernate一共包括了23个jar包,令人眼花缭乱。本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进行取舍。
下载Hibernate,例如2.0.3稳定版本,解压缩,可以看到一个hibernate2.jar和lib目录下有22个jar包:
使用Hibernate必须的jar包就是以上的这几个,剩下的都是可选的。
ant.jar:
Ant编译工具的jar包,用来编译Hibernate源代码的。如果你不准备修改和编译Hibernate源代码,那么就没有什么用,可选的jar包
optional.jar:
Ant的一个辅助包。
ant.jar和antlr.jar(可以删去):的是ant编译用的包,在工程中不用添加
asm.jar:Hebernate的包,Hibernate在运行时使用这个代码生成库增强类(与java反射机制联合使用).ASM字节码库,cglib.jar包依赖的包。必需的jar包。
axis-ant.jar:是Axis为支持Ant构建,提供了的文件。该文件包含三个可选任务(task)的定义和实现:axis-wsdl2java,axis-java2wsdl和axis-admin。
commons-logging.jar:
Apache Commons包中的一个,包含了日志功能,必须使用的jar包。这个包本身包含了一个Simple Logger,但是功能很弱。在运行的时候它会先在CLASSPATH找log4j,如果有,就使用log4j,如果没有,就找JDK1.4带的java.util.logging,如果也找不到就用Simple Logger。commons-logging.jar的出现是一个历史的的遗留的遗憾,当初Apache极力游说Sun把log4j加入JDK1.4,然而JDK1.4项目小组已经接近发布JDK1.4产品的时间了,因此拒绝了Apache的要求,使用自己的java.util.logging,这个包的功能比log4j差的很远,性能也一般。后来Apache就开发出来了commons-logging.jar用来兼容两个logger。因此用commons-logging.jar写的log程序,底层的Logger是可以切换的,你可以选择log4j,java.util.logging或者它自带的Simple Logger。不过我仍然强烈建议使用log4j,因为log4j性能很高,log输出信息时间几乎等于System.out,而处理一条log平均只需要5us。你可以在Hibernate的src目录下找到Hibernate已经为你准备好了的log4j的配置文件,你只需要到Apache 网站去下载log4j就可以了。commons-logging.jar也是必须的jar包。
connector.jar:
JCA 规范,如果你在App Server上把Hibernate配置为Connector的话,就需要这个jar。不过实际上一般App Server肯定会带上这个包,所以实际上是多余的包。
jaas.jar:
JAAS是用来进行权限验证的,已经包含在JDK1.4里面了。所以实际上是多余的包。
commons-chain.jar Jakarta Commons的子项目Chain将上述两个模式组合成一个可复用的Java框架用于描述顺序的处理流程 strutsheShale应用框架作为处理HTTP请求处理的基础机制
commons-validator.jar 用来帮助进行验证的工具。比如验证Email字符串,日期字符串等是否合法。
jcs.jar:
如果你准备在Hibernate中使用JCS的话,那么必须包括它,否则就不用。
jdbc2_0-stdext.jar:
JDBC2.0的扩展包,一般来说数据库连接池会用上它。不过App Server都会带上,所以也是多余的。
jta.jar:
JTA规范,当Hibernate使用JTA的时候需要,不过App Server都会带上,所以也是多余的。
Burlap.jar 支持ejb,远程调用Remoting方面的类
buffalo.jar 处理xml的jar包
commons-betwixt.jar 用xml生成报表时需要用到的包
commons-el.jar Apache 组织中一个用来解析 JSP 2.0 的表达式语言的 Java
commons-digester.jar Digester基于规则的XML文档解析,主要用于XML到java对象的映射
commons-lang.jar 包含了一些数据类型工具类,是ng.* 的扩展 必须使用的包
commons-pool.jar,commons-dbcp.jar DBCP数据库连接池,Apache的Jakarta组织开发的,Tomcat4的连接池也是DBCP
ehcache.jar EHCache缓存 如果没有其他的缓存,则是必要的
cglib.jar CGLIB字节码解释器 如果使用“cglib” 则必要
commons-beanutils.jar 提供对java反射和自省API的包装 对bean操作的类,可以访问类的属性及get和set方法
hibernate2.jar:
Hibernate的库,没有什么可说的,必须使用的jar包
cglib-asm.jar:
CGLIB库,Hibernate用它来实现PO字节码的动态生成,非常核心的库,必须使用的jar包
dom4j.jar:
dom4j是一个Java的XML API,类似于jdom,用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API,具有性能优异、功能强大和极端易用使用的特点,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章,对主流的Java XML API进行的性能、功能和易用性的评测,dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j,直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包,Hibernate用它来读写配置文件。
jta.jar 标准JTA API必要
commons-collections.jar 集合类 必要
antlr.jar ANother Tool for Language Recognition 必要
asm.jar ASM字节码库 如果使用“cglib” 则必要
asm-attrs.jar ASM字节码库 如果使用“cglib” 则必要
commons-cli-1.0.jar:这是一个处理命令的工具。比如main方法输入的string[]需要解析。你可以预先定义好参数的规则,然后就可以调用CLI来解析。
commond-collections.jar:包含了一些Apache开发的集合类,功能比java.util.*强大。必须使用的jar包.
com.ibm.icu_3.6.1.v10070417.jar:从3.2版本开始,eclipse就增加了一个com.ibm.icu插件,用于增强对多语言的支持。应该是没用的。
commons-beanutils.jar:下面几个带“commons”的都是Apache Commons包中的一个,这里是被hibernate使用的,估计在工程中没有全部用到这些包,所以有的应该能删去。本包包含了一些Bean工具类类,是必须使用的jar包。
htmlparser.jar 是一个纯的java写的html解析的库,它不依赖于其它的java库文件,主要用于改造或提取html类库
jakarta-oro.jar java正则表达式所需的包
jaxen.jar 在jdom中使用xpath需要导入jaxen.jar包
mina-core.jar Apache MINA(Multipurpose Infrastructure for Network Applications) 是 Apache 组织一个较新的项目,它为开发高性能和高可用性的网络应用程序提供了非常便利的框架
相关文档
最新文档