原始手写helloworld并打jar包允许

1.创建文件夹test统一在其中操作
2.创建hello.java文件 【hello.txt改属性为hello.java】并在里面添加代码
java 复制代码
public class hello {
    public static void main(String[] args) {
        System.out.println("hello world");
    }
}

注意:类名与文件名一致 然后运行命令 javac hello.java 生成 hello.class文件

3.test文件夹命令运行 jar cvf demo.jar ./ [注意空格下再 ./ ]

用法: jar {c txui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...

常用选项:(选项跟Linux下的tar 类似)
-c 创建新档案

-t 列出档案目录

-x 从档案中提取指定的 (或所有) 文件

-u 更新现有档案**

-v 在标准输出中生成详细输出

-f 指定档案文件名

-m 包含指定清单文件中的清单信息

-e 为捆绑到可执行 jar 文件的独立应用程序

-C 更改为指定的目录并包含以下文件(cd 到指定目录下面)

4.如下图 对生成的demo.jar 右键 WinRAR打开,找到 META-INF/MANIFEST.M
5.手动加入 Main-Class: 类名 如 Main-Class: hello 并保存更新demo.jar包
6.test目录中运行cmd命令 java -jar demo.jar 输出结果: hello world
相关推荐
tongluowan0071 分钟前
Java 内存模型(JMM)- happens-before 与内存屏障
java·内存模型·happens-before
plainGeekDev5 分钟前
Android Framework 面试题:Binder都说不清楚,简历别写精通了
android·java
Gauss松鼠会7 分钟前
【GaussDB】基于SpringBoot实现操作GaussDB(DWS)的项目实战
java·数据库·经验分享·spring boot·后端·sql·gaussdb
Gauss松鼠会12 分钟前
【GaussDB】GaussDB 常见问题及解决方案汇总
java·数据库·算法·性能优化·gaussdb·经验总结
xiaogg367815 分钟前
k8s 部署yaml文件和Dockerfile文件配置
java·docker·kubernetes
砍材农夫17 分钟前
物联网 基于netty构建mqtt协议规范(发布/订阅模式)
java·开发语言·物联网·netty
techdashen18 分钟前
Rust 泛型 vs Java 泛型:它们看起来相似,但骨子里截然不同
java·开发语言·rust
人道领域26 分钟前
【LeetCode刷题日记】106.从遍历序列重建二叉树:手撕递归边界,彻底搞懂左闭右闭 vs 左闭右开
java·算法·leetcode
luck_bor36 分钟前
Map&Stream流
java·开发语言