首页编程java编程java项目为什么要打包?将java程序打包成jar有什么用

java项目为什么要打包?将java程序打包成jar有什么用

编程之家2023-10-1388次浏览

大家好,java项目为什么要打包相信很多的网友都不是很明白,包括将java程序打包成jar有什么用也是一样,不过没有关系,接下来就来为大家分享关于java项目为什么要打包和将java程序打包成jar有什么用的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!

java项目为什么要打包?将java程序打包成jar有什么用

eclipse中java中一个项目几个包,这个怎么理解

尽量将不相关的包分开,不要放在一起!

比如你的项目是网络应用

com.net包专放联网部分代码

java项目为什么要打包?将java程序打包成jar有什么用

com.application专放应用逻辑

com......

要区分开,原因是:

java项目为什么要打包?将java程序打包成jar有什么用

第一:很好阅读,不是放在一起像老鼠窝,并且可以通过包的命名大至知道这个包里放了些啥东西,有什么用的,看代码的时候,就会有针对性去找。

第二:方便扩展和再利用。这一点最重要!!!

如果下次你要再写另一个应用程序。另一个应用程序也要使用联网代码,而且现在的联网代码

不需要更改就可以直接copy过去,或者很少修改拿过去,那我就直接copy com.net整个包过去。就OK,如果不这样做的话就会很容易出错,copy的时候,你怎么知道要拷多少个文件过去呢?

另外,可以单独将com.net包打包成jar文件,这就是你的联网库,以后可以做为库文件使用,方利至极!

这是一个程序员必须遵守的习惯!程序写得越大,这些包就必须分得越清,包与包之间的藕合要越小

Java程序打成Jar包全过程

Java程序完成以后对于Windows操作系统习惯总是想双击某个exe文件就可以直接运行程序现我将一步一步的实现该过程最终结果是:不用安装JRE环境不用安装数据库直接双击一个exe文件就可以运行程序

下面我将以我最近写的一个程序作例子进行该打包过程

该程序是使用了:Hibernate Spring Derby的Java GUI(JDK需要版本因该版本才有Derby)我使用的是Eclipse进行开发

第一步:完成Java GUI程序

在Eclipse下程序能够正常运行

第二步:准备清单文件(MANIFEST MF)

方法:直接拷贝其它能运行的JAR文件中的MANIFEST MF进行修改

方法:利用IDE工具如Eclipse在生成JAR文件时自动生成

MANIFEST MF内容如下:

Manifest Version:

Main Class: manager ui MainFrame

Class Path:/lib/spring jar/lib/hibernate jar/lib/derby jar

SplashScreen Imager: manager/resources/images/splash jpg

说明:

Manifest Version-指定清单文件的版本号

Main Class-指定程序运行的入口类注意类名后不要加class扩展名

Class Path-指定支持库的路径指程序运行目录即导出的JAR包所在目录程序运行时依据Class Path项的设置路径来查找支持库每一个支持库之间用空格隔开在这里使用了hibernate spring derby

注意:

如果Java应用程序用到了一些Eclipse包那么就必须将这些包也复制到程序运行目录设置到Class Path否则程序将无法运行引用了一些外部组件也需要如此设置如hibernate spring derby

除了入口类的包名和类名之外其他设置项都不分大小写比如 Class Path写成class path或CLASS PATH也可以 swt jar写成SWT JAR也行

类名后不要加class扩展名

每一行的:后都有一个空格如Class Path:<空格>/lib/spring jar

Class Path中引入的JAR文件每行不得超过个否则会报错但在让人意外的是每行只有前个有效故将所有同类型的JAR文件做成一个JAR文件如我这里的spring jar hibernate jar derby jar都是同类JAR文件的组合

第三步:修改spring配置文件

在spring的 sessionFactory bean的配置中则要这样写(与程序中ClassPathXmlApplicationContext对应)

<property name= mappingLocations>

<list>

<value>manager/entity/MyFile hbm xml</value>

<value>manager/entity/FileType hbm xml</value>

</list>

</property>

第四步:使用Eclipse生成JAR文件

右键单击项目名在弹出菜单中选择 Export在弹出的如下图所示的对话框中选择 JAR文件单击 Next

将右边不需要的文件都取消勾选在选择导出目标(Select the export destination)项文本框中设置JAR包的输出路径和包名(可以任意取名)为 D:\manager\manager jar接受其他的默认设置不变单击 Next

附注左边虽然选择了src目录但源文件并不会导出到包中除非勾选了导出Java源代码文件和资源(Export java source files and resources)项

接受默认设置不变单击 Next

这一步较关键如下图所示选择从工作空间中使用现有清单项将创建的清单文件输入也可以通过旁边的浏览按钮来选择清单文件输入清单文件后单击 Finish Eclipse开始将项目打包

附:这里也可以选择Generate the manifest file但生成的清单文件MAINFEST MF需要修改

注意:清单文件MAINFEST MF一定要按第二步那样设置

生成的JAR文件目录如下:

第五步:生成运行manager jar的批处理文件manager bat(该步可以不要)

在manager目录下创建一个批处理程序manager bat(名字任取扩展名必须是bat)其内容仅一句语句如下

javaw jar manager jar

说明

javaw对应c:\jdk\jre\bin\javaw exe文件如果windows提示命令未发现则需要将c:\jdk\jre\bin路径加入到windows环境变量path中

在运行程序的时候有一个讨厌的黑色命令行窗口要去掉它可以将run bat内容更改如下 start javaw jar manager jar start是指调用了windows的运行命令

在后边加一个pause就可以让你看到具体哪里出错了如:

start javaw jar manager jar

pause

双击manager bat就可以运行该JAR文件了

第六步:让电脑不必安装JRE环境也能运行

通常运行Java程序有个前提条件用户电脑必须先安装JRE环境虽然安装JRE环境非常简单但毕竟多了一步算是有一点点的瑕疵这里给出一个不必让用户安装JRE环境的方法其实现步骤如下

()将原JDK中的 jre目录复制到 D:\manager\java目录下(java也可换成其他名称)

()将JDK和JRE从本机卸载掉这样表示本机没有安装JAVA运行环境

()修改批处理文件manager bat中的命令为 start java\jre\bin\javaw jar manager jar仅仅是在javaw前加上了一个相对应路径

双击manager bat即可在不安装JRE环境的电脑运行此Java应用程序

第七步:抛弃批处理文件(* bat)生成exe文件

用批处理文件运行程序似乎不够专业虽然它足以完成运行任务但习惯就象一种毒药一旦染上就很难摆脱它的影响 Windows统治下的人们早已经习惯运行扩展名是EXE的程序用* bat他们就会感觉别扭

我们可以用一个叫JavaLauncher的免费小程序来代替批处理文件去运行Java程序 JavaLauncher的下载网址是

下载下来的文件是一个名JavaLauncher zip的压缩包解压后的目录结构如下所示

JavaLauncher zip目录结构

source目录包含了JavaLauncher的源程序是用C语言写的

changes txt是新版的修改说明

launch exe是主程序

launcher cfg是配置文件

readme txt是一些说明和示例

我们只需要launch exe launcher cfg两个文件将这两个文件复制到打包文件所在的目录 launcher cfg是一个仅三行内容的文本文件将它修改如下

\java\jre\bin\javaw exe

jar manager jar

第一行设置指向JAR包managger jar的目录由于launch exe和myswt jar同在一个目录所以用即当前目录

第二行设置指向jre\bin\javaw exe的路径在上面已将jre目录复制到了java子目录中

配置好launcher cfg后双击launch exe即可运行java应用程序

如果仔佃研究eclipse的启动方式发现eclipse和JavaLauncher的原理一样 eclipse exe相当于launch exe startup jar相当于manager jar只不过eclipse exe不象launch exe要具有通用性所以它没有* cfg这样的配置文件而是将启动信息固化在eclipse exe中

第八步:美化图标

launch exe文件的图标太单调了让我们给它换个好看点的换程序的图标需要用到一个免费的软件 Resource Hacker

第九步:最后的打包

发送给用户之前通常要用WinZip或WinRAR将所有的文件全部打成一个压缩包然后用户得到这个压缩包后将其解压缩后即可运行程序 Eclipse软件就是这种方式

lishixinzhi/Article/program/Java/hx/201311/25574

将java程序打包成jar有什么用

jar包就是别人已经写好的一些类,然后将这些类进行打包,可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性了,这些jar包一般都会放在lib目录下的。

使用范围

一个 JAR文件可以用于

□用于发布和使用类库

□作为应用程序和扩展的构建单元

□作为组件、applet或者插件程序的部署单位

□用于打包与组件相关联的辅助资源

将java文件打包成exe

这个想法我之前也有过,但是实现起来真的不容易,即使实现了,也没什么作用。

直接打包成jar是可以的,但是到没有java虚拟机的主机上就运行不了。

因此你必须在exe中加上庞大的虚拟机,现在电脑上安装java虚拟机的用户并不太多,这也就是说你的exe文件至少要80多MB。。这个程序也许是一个庞大的数据管理系统,也许只是一个贪吃蛇游戏。但是必须要这样。

所以只能精简JRE,有个叫GREENJVM的项目可以帮到你,但是这个项目只是提供了精简rt.jar(就是你调用的类库,不包含真正实现部分),而且精简起来有点麻烦。剩余部分还需要自己精简,对java类库不了解的话,很容易出错。综合下来,会让开发周期变的很长。

因此如果你要写小程序的话,还是不要打包成exe,除非大型项目,即使那样打包成exe也不是好的选择。你可以在大项目中放入jre的安装包,然后组成一个大的安装包(比如photoshop这样的东西都包含jre)。所以推荐你写小程序最好还是不要用java了,windows下最好还是用一些其他语言编写。

另外,如果你因为不可抗拒的原因必须打包,那么,lauch4j,j2ewiz这些东西就可以,我推荐exe4j,我用其他的打包总是不知道为什么不成功,有的还带毒。。。

http://www.ej-technologies.com/products/exe4j/overview.html

这是exe4j的官网希望能帮助到你,百度一下也可以找到下载和教程,不会的话再联系我好了

java项目为什么要打包的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于将java程序打包成jar有什么用、java项目为什么要打包的信息别忘了在本站进行查找哦。

java中基本类型是什么 java语言的所有数据类型分为哪几种java def是什么(def是什么意思)