当前位置: 首页 > news >正文

Java笔记17:导出可执行jar包

 这里介绍Java程序的两种导出可执行jar包的方式,一种是图形界面打包,另一种是命令行打包。

 

一、图形界面打包

1 建立名为JarDemo的Java Project,在src目录下建立com.abc的Package,在com.abc中建立简单的Person.java类

 

2 右键点击JarDemo,在弹出窗口中选择“Export”,选择“JAR File”,下一步

 

3 按默认勾选右侧的.classpath和.project,在“JAR file:”一栏里填上路径和jar包名称,比如E:\myjar01.jar。其它按默认。“Finish”

 

4 这里允许编译警告但不允许编译错误,完成

 

5 在盘根目录下可以看到生成的jar包

 

6 可以用jar tvf命令查看myjar01.jar中的内容

 注意,这里所用到的jar.exe位于jdk的bin目录下,需要先把jdk的bin目录添加到系统环境变量path中。

 

7 验证jar包是否可用

新建名为JarDemoTest的Java Project,加入myjar01.jar包,编写简单代码并运行结果,见下图

上图的结果说明myjar01.jar包可以使用。

 

二、命令行打包

1 检查是否已将jdk的bin目录添加到系统环境变量path中

上述结果表示已经添加。若未添加,需要先添加并注销用户重新登录以使新path值生效。

 

2 执行命令

pushd E:\workspace\JarDemo\bin

jar cvf e:\myjar02.jar ..\.classpath ..\.project com\abc\Person.class

执行成功后可用tar tvf命令来查看包中的内容

tar tvf e:\myjar02.jar

 

3 查看结果

 

4 验证jar包是否可用

上图的结果表明myjar02.jar可以使用。

相关文章:

  • PHP 报告分拣和生产理念
  • yum 安装包时提示Error: Missing Dependency: php-common
  • GO --微服务框架(二) goa
  • 给电脑配置镜像,加快npm下载第三方依赖包速度
  • 深入理解java异常处理机制
  • Windows Server 2008无法更新时间
  • 字符串操作
  • device tree website
  • NYOJ 113 字符串替换(C++STL解法)
  • 2.MyBatis 框架原理
  • 201604-201704格尔斯常用链接记录
  • java多线程基本概述(二十一)——BlockingQueue
  • 【安德鲁斯】基于脚本的数据库quot;增量更新quot;,如果不改变,每次更新java代码、!...
  • Django开发BBS---51网络课程笔记(1)
  • 问题之ssh中Host key verification failed的解决
  • 【391天】每日项目总结系列128(2018.03.03)
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • 10个确保微服务与容器安全的最佳实践
  • 10个最佳ES6特性 ES7与ES8的特性
  • 2018一半小结一波
  • Apache的80端口被占用以及访问时报错403
  • css选择器
  • iOS动画编程-View动画[ 1 ] 基础View动画
  • JS题目及答案整理
  • SpingCloudBus整合RabbitMQ
  • tensorflow学习笔记3——MNIST应用篇
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 删除表内多余的重复数据
  • 微信支付JSAPI,实测!终极方案
  • 自动记录MySQL慢查询快照脚本
  • 《天龙八部3D》Unity技术方案揭秘
  • raise 与 raise ... from 的区别
  • 阿里云服务器如何修改远程端口?
  • ​你们这样子,耽误我的工作进度怎么办?
  • (1)Map集合 (2)异常机制 (3)File类 (4)I/O流
  • (3)STL算法之搜索
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (附源码)spring boot车辆管理系统 毕业设计 031034
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)基于SpringBoot和Vue的厨到家服务平台的设计与实现 毕业设计 063133
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (一)基于IDEA的JAVA基础1
  • .NET 8.0 发布到 IIS
  • .Net Memory Profiler的使用举例
  • .net 验证控件和javaScript的冲突问题
  • .Net通用分页类(存储过程分页版,可以选择页码的显示样式,且有中英选择)
  • @ModelAttribute使用详解
  • [ vulhub漏洞复现篇 ] Django SQL注入漏洞复现 CVE-2021-35042
  • [ 云计算 | AWS 实践 ] 基于 Amazon S3 协议搭建个人云存储服务
  • [20170728]oracle保留字.txt
  • [30期] 我的学习方法
  • [BZOJ4016][FJOI2014]最短路径树问题
  • [C++ 从入门到精通] 12.重载运算符、赋值运算符重载、析构函数
  • [C++从入门到精通] 14.虚函数、纯虚函数和虚析构(virtual)
  • [Codeforces1137D]Cooperative Game