做IT也二十年有余了,一直做着运维工作,编程仅是业余兴趣,水平就是在Hello World的基础上多做几个练习,行在各语言都能试试手,偶尔也能做些提高效率小工具,多是味都没怎么嚼就新版本了,人也白发生了...
运维吗,效率在先,什么容易就用什么,c#,php,autoit,shell,bat,vba,sql,powershell,python,唯java总觉得鸡肋,上不能下也不就,就真没怎么学,应用软件又忒多。和c/c++一样路过了无数遍就是入不了门。
这不闲着加撞上,今日拿java练练手,走到jar文件生成这里,难住了,耗了一下午。运行java -jar a01.jar就是报错,提示”找不到或无法加载主类“,网上说是在jar包的MANIFEST.MF文件里添加Main-Class:,还不忘告诉说冒号后加空格,写上类名再回车,可照做了还是运行不了。网页上还列举了”intellij idea“图形界面上生成jar包的操作方式,照着走了一遍,有效。
可命令行的操作总得解决啊,就这么试了报错,报错了重试,在两篇网文拼凑下得已解决:
1.写的java文件需先编译:javac a01/Main.java
2.java文件不带包,就是文件首行不指定“package a01;”,可直接运行:java -cvf a01.jar -C a01 .
3.java文件带包,文件首行有“package a01;”,需运行:jar -cvfe a01.jar a01.Main a01,多了一个参数-e,指定了主程序路径,
可-C参数跑了呢,试了不明所以,加上就运行了,留待日后积累经验来解释了。
4.MANIFEST.MF文件可以提前建立好,也可以用压缩软件直接打开jar包修改里面MANIFEST.MF文件,都有效,参数加m,如-cvfm
5.运行命令:java -jar a01.jar