使用jdk基础命令打包和生成

本文只是稍作整理,原文见没有IDE如何编译JAVA项目

  1. 编译工程
javac -d {指定class文件存放目录}  {源文件目录/*.java}`

例:

javac -encoding utf-8 -d ./classes ./src/com/xiangpeng/GUI/chat/*.java

-encoding utf-8 是为了防止出现"32: 错误: 编码GBK的不可映射字符"错误

  1. 将编译的class打成jar包

先进入class文件存放目录

jar -cvf [jar包名] ./*

./* 表示编译当前目录下的所有文件到jar包中

  1. 更新jar包中的MANIFEST.MF文件
    使用jar命令生成的jar包暂时还不可用,因为没指定main方法所在文件,所以需要进行配置,配置在jar包中的"/META-INF/MANIFEST.MF"修改
    (1) 先解压jar包,进入 “包名/META-INF” 文件,使用记事本打开MANIFEST.MF
    (2) 在文件中添加命令
Main-Class:[main方法所在类全名]

例:

Main-Class: com.xiangpeng.GUI.chat.ChatUI

(3) 合并解压文件中的MANIFEST.MF与jar包中的MANIFEST.MF
执行命令:

jar -uvfm [jar包名] [MANIFEST.MF文件路径]

例:

jar -uvfm chatGUI.jar chatGUI/META-INF/MANIFEST.MF

至此,jar包完成,可调用java -jar 命令运行:

java -jar chatGUI.jar

备注:
修改与2019/10/20 喵了个咪的,MANIFEST.MF文件后面一定要留一个空行,否则最后一行配置不认

你可能感兴趣的:(java)