java文件打包jar并运行

编写了一个java文件,将它编译为class文件,然后将class文件打包为jar并能够运行其中的main方法

编译

powershell 复制代码
# 进入java的文件夹
javac -encoding UTF-8 .\AESUtils.java   # 多个可以  *.java

运行class文件

shell 复制代码
java AESUtils # 能运行其中的main方法

打包jar

不需要运行main

若是不需要jar包能运行其中的main方法

shell 复制代码
jar cvf AESUtils.jar  AESUtils.class  

若是需要能运行其中的main方法

方法1:直接打包有主程序的jar包

  1. 编写主程序文件:MANIFEST.MF
    1. 在根目录创建这个文件
java 复制代码
Manifest-Version: 1.0
Created-By: 1.8.0_181 (Oracle Corporation)
Main-Class: AESUtils
  1. 打包
shell 复制代码
jar cvfm AESUtils.jar .\MANIFEST.MF  AESUtils.class   # 将 MANIFEST.MF和 class文件打包进去
  1. 运行
powershell 复制代码
java -jar AESUtils.jar

方法2:生成jar包后,再设置主程序

  1. 打包
shell 复制代码
jar cvf AESUtils.jar  AESUtils.class
  1. 使用压缩软件打开jar,打开里面的MATE-INF\MANIFEST.MF,追加上主类
powershell 复制代码
Main-Class: AESUtils
  1. 运行
powershell 复制代码
java -jar AESUtils.jar
相关推荐
源码宝5 分钟前
【智慧工地源码】智慧工地云平台系统,涵盖安全、质量、环境、人员和设备五大管理模块,实现实时监控、智能预警和数据分析。
java·大数据·spring cloud·数据分析·源码·智慧工地·云平台
看到我,请让我去学习38 分钟前
QT - QT开发进阶合集
开发语言·qt
weixin_3077791341 分钟前
VS Code配置MinGW64编译SQLite3库
开发语言·数据库·c++·vscode·算法
David爱编程1 小时前
面试必问!线程生命周期与状态转换详解
java·后端
LKAI.2 小时前
传统方式部署(RuoYi-Cloud)微服务
java·linux·前端·后端·微服务·node.js·ruoyi
HeyZoeHey2 小时前
Mybatis执行sql流程(一)
java·sql·mybatis
2301_793086872 小时前
SpringCloud 07 微服务网关
java·spring cloud·微服务
励志不掉头发的内向程序员2 小时前
STL库——string(类函数学习)
开发语言·c++
一百天成为python专家2 小时前
Python循环语句 从入门到精通
开发语言·人工智能·python·opencv·支持向量机·计算机视觉
Sunhen_Qiletian2 小时前
朝花夕拾(五)--------Python 中函数、库及接口的详解
开发语言·python