??xml version="1.0" encoding="utf-8" standalone="yes"?>国产精品久久久久永久免费观看,成人午夜在线观看视频,国产乱码精品一区二区三区中文http://www.aygfsteel.com/zjun0211/zh-cnWed, 18 Jun 2025 15:53:52 GMTWed, 18 Jun 2025 15:53:52 GMT60java打包生成jar和exe全过E?/title><link>http://www.aygfsteel.com/zjun0211/archive/2011/08/25/357228.html</link><dc:creator>漫夜镉K</dc:creator><author>漫夜镉K</author><pubDate>Wed, 24 Aug 2011 16:38:00 GMT</pubDate><guid>http://www.aygfsteel.com/zjun0211/archive/2011/08/25/357228.html</guid><wfw:comment>http://www.aygfsteel.com/zjun0211/comments/357228.html</wfw:comment><comments>http://www.aygfsteel.com/zjun0211/archive/2011/08/25/357228.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/zjun0211/comments/commentRss/357228.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/zjun0211/services/trackbacks/357228.html</trackback:ping><description><![CDATA[JavaE序完成以后,对于Windows操作pȝ,习惯L惛_L个exe文g可以直接运行程?现我一步一步的实现该过E?最l结果是:不用安装JRE环境,不用安装数据?直接双击一个exe文g,可以运行程?<br /><br />  下面介绍q程Q?br /><br />  W一?完成Java GUIE序<br /><br />  在Eclipse?E序能够正常q行.<br /><br />  W二?准备清单文g(MANIFEST.MF)<br /><br />  Ҏ1:直接拯其它能运行的JAR文g中的MANIFEST.MFq行修改<br /><br />  Ҏ2:利用IDE工具,如Eclipse在生成JAR文g时自动生?br /><br />  MANIFEST.MF内容如下:<br /><br />  Manifest-Version: 1.0<br /><br />  Main-Class: manager.ui.MainFrame<br /><br />  Class-Path: ./lib/spring.jar ./lib/hibernate.jar ./lib/derby.jar<br /><br />  SplashScreen-Imager: manager/resources/images/splash.jpg<br /><br />  说明:<br /><br />  Manifest-Version Q?指定清单文g的版本号<br /><br />  Main-Class Q指定程序运行的入口cR注意:cd后不要加class扩展?br /><br />  Class-Path Q指定支持库的\径?#8220;.”指程序运行目录,卛_出的JAR包所在目录。程序运行时依据Class-Path的讄路径来查找支持库。每一个支持库之间用空格隔开。在q里使用了hibernate,spring,derby.<br /><br />  注意:<br /><br />  1.如果Java应用E序用到了一些Eclipse包,那么必dq些包也复制到程序运行目录,讄到Class-Path,否则E序无法运?引用了一些外部组件也需要如此设|?如hibernate,spring,derby.<br /><br />  2. 除了入口cȝ包名和类名之外,其他讄w不分大小写,比如QClass-Path写成class-path或CLASS-PATH也可以,swt.jar写成SWT.JAR也行?br /><br />  3.cd后不要加class扩展?br /><br />  4.每一行的':'后都有一个空?如Class-Path:<I格>./lib/spring.jar<br /><br />  5.Class-Path?引入的JAR文g每行不得过19?否则会报?但在让h意外的是每行只有?个有?故将所有同cd的JAR 文g做成一个JAR文g.如我q里的spring.jar,hibernate.jar,derby.jar都是同类JAR文g的组?<br /><br />W三?修改spring配置文g<br /><br />  在spring?'sessionFactory' bean的配|中则要q样?与程序中ClassPathXmlApplicationContext对应)<br /><br />  <property name="mappingLocations"><br /><br />  <list><br /><br />  <value>manager/entity/MyFile.hbm.xml</value><br /><br />  <value>manager/entity/FileType.hbm.xml</value><br /><br />  ...<br /><br />  </list><br /><br />  </property><br /><br />  W四?使用Eclipse生成JAR文g<br /><br />  1.右键单击目名,在弹单中选择“Export”。在弹出的如下图所C的对话框中Q选择“JAR文g”Q单?#8220;Next”<br /><br />  2.右边不需要的文g都取消勾选。在“选择导出目标(Select the export destination)”Ҏ本框中设|JAR包的输出路径和包名(可以L取名Qؓ“D:\manager\manager.jar”。接受其他的默认讄不变Q单?#8220;Next”?br /><br />  附注Q左边虽焉择了src目录Q但源文件ƈ不会导出到包中,除非N了“导出Java源代码文件和资源(Export java source files and resources)”V?br /><br />  3.接受默认讄不变Q单?#8220;Next”<br /><br />  4.q一步较关键。如下图所C,选择“从工作空间中使用现有清单”,创建的清单文g输入Q也可以通过旁边?#8220;览”按钮来选择清单文g。输入清单文件后Q单?#8220;Finish”QEclipse开始将目打包?br /><br />  ?q里也可以选择Generate the manifest file.但生成的清单文gMAINFEST.MF需要修?<br /><br />  注意:清单文gMAINFEST.MF一定要按第二步那样讄.<br /><br />  生成的JAR文g目录如下:<br /><br />  W五?生成q行manager.jar的批处理文gmanager.bat(该步可以不要)<br /><br />  在manager目录下创Z个批处理E序manager.batQ名字Q取,扩展名必LbatQ,其内容仅一句语句,如下Q?br /><br />  javaw -jar manager.jar<br /><br />  说明Q?br /><br />  1.javaw对应c:\jdk\jre\bin\javaw.exe文gQ如果windows提示命o未发玎ͼ则需要将c:\jdk\jre\bin路径加入到windows环境变量path中?br /><br />  2.在运行程序的时候有一个讨厌的黑色命o行窗口,要去掉它Q可以将run.bat内容更改如下Q?#8220;start javaw -jar manager.jar”Qstart是指调用了windows?#8220;q行”命o?br /><br />  3.在后边加一个pause可以让你看到具体哪里出错了,?<br /><br />  start javaw -jar manager.jar<br /><br />  pause<br /><br />  双击manager.bat,可以运行该JAR文g?<br /><br />W六?让电脑不必安装JRE环境,也能q行.<br /><br />  通常q行JavaE序有个前提条gQ用L脑必d安装JRE环境。虽然安装JRE环境非常单,但毕竟多了一步,是有一点点的瑕c这里给Z个不必让用户安装JRE环境的方法,其实现步骤如下:<br /><br />  Q?Q将原JDK中的“jre”目录复制?#8220;D:\manager\java”目录下(java也可换成其他名称Q?br /><br />  Q?Q将JDK和JRE从本机卸载掉Q这栯C本机没有安装JAVAq行环境?br /><br />  Q?Q修Ҏ处理文gmanager.bat中的命o?#8220;start java\jre\bin\javaw -jar manager.jar”Q仅仅是在javaw前加上了一个相对应路径?br /><br />  双击manager.bat卛_在不安装JRE环境的电脑运行此Java应用E序?br /><br />  W七?抛弃批处理文Ӟ*.batQ?生成exe文g<br /><br />  用批处理文gq行E序g不够专业Q虽然它以完成q行d。但习惯p一U毒药一旦染上就很难摆脱它的影响QWindowsl治下的Z早已l习惯运行扩展名是EXE的程序,?.bat他们׃感觉别扭?br /><br />  我们可以用一个叫JavaLauncher的免费小E序来代替批处理文g去运行JavaE序。JavaLauncher的下载网址是:<br /><br />  http://www.rolemaker.dk/nonRoleMaker/javalauncher/marner_java_launcher.htm<br /><br />  下蝲下来的文件是一个名JavaLauncher.zip的压~包Q解压后的目录结构如下所C:<br /><br />  JavaLauncher.zip目录l构<br /><br />  source        目录包含了JavaLauncher的源E序Q是用C语言写的<br /><br />  changes.txt   是新版的修改说明<br /><br />  launch.exe    是主E序<br /><br />  launcher.cfg  是配|文?br /><br />  readme.txt    是一些说明和CZ<br /><br />  我们只需要launch.exe、launcher.cfg两个文gQ将q两个文件复制到打包文g所在的目录。launcher.cfg是一个仅三行内容的文本文Ӟ它修改如下Q?br /><br />  .\java\jre\bin\javaw.exe<br /><br />  -jar manager.jar<br /><br />  W一行设|指向JAR包managger.jar的目录,׃launch.exe和myswt.jar同在一个目录,所以用“.”卛_前目录?br /><br />  W二行设|指向jre\bin\javaw.exe的\径。在上面已将jre目录复制Cjava子目录中<br /><br />  配置好launcher.cfg后,双击launch.exe卛_q行java应用E序?br /><br />  如果仔佃研究eclipse的启动方式,发现eclipse和JavaLauncher的原理一Peclipse.exe相当?launch.exeQstartup.jar相当于manager.jar。只不过eclipse.exe不象launch.exe要具有通用性,所以它没有*.cfgq样的配|文Ӟ而是启动信息固化在eclipse.exe中?br /><br />  W八?化图标<br /><br />  launch.exe文g的图标太单调了,让我们给它换个好看点的。换E序的图标需要用C个免费的软gQResource Hacker.<br /><br />  W九?最后的打包<br /><br />  发送给用户之前Q通常要用WinZip或WinRAR所有的文g全部打成一个压~包Q然后用户得到这个压~包后,其解压~后卛_q行E序QEclipse软g是q种方式?br /><br />  另一U方式是用InstallShield、InstallAnyWhereq样的安装程序制作Y件来创徏一个单一的setup.exe文gQ它h向导式的安装界面Q而且q可以往windows的程序栏插入菜单,关于q些安装E序制作软g的具体用请参阅相关书籍?br /><img src ="http://www.aygfsteel.com/zjun0211/aggbug/357228.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/zjun0211/" target="_blank">漫夜镉K</a> 2011-08-25 00:38 <a href="http://www.aygfsteel.com/zjun0211/archive/2011/08/25/357228.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">绯</a>| <a href="http://" target="_blank">ï</a>| <a href="http://" target="_blank">ʵ</a>| <a href="http://" target="_blank">ͼ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Դ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ɽ</a>| <a href="http://" target="_blank">޽</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">㽭ʡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ֿ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̩</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ļ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ԫ</a>| <a href="http://" target="_blank">Ǩ</a>| <a href="http://" target="_blank">פ</a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank">ͷ</a>| <a href="http://" target="_blank">ľ˹</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>