java类文件的执行顺序,是先执行jar里的main方法,还是先执行自己写的类?

java类文件的执行顺序,是先执行jar里的main方法,还是先执行自己写的类?,第1张

java 里的main相当于大门,如果你没有从门里进去,怎么去做其他的亮宴呢。直接在类里面写模橘一个main方法呢。public static void main(String[] agre){

实例敬码银化对象呢,

}

如果你配置绝闷弯好了jre环境,你现在有一个打包好的jar文件,你可以这样子开始执行

java -classpath example.jar mainClass

-classpath告诉虚拟机在哪里找类的字节码,顺便提一下虚拟机加载类是lazy加载的,只有用到的时候才加载,虚拟机按照以下顺序进行搜索和加载:

1 bootstrap classes,基础类,如Java的library类

2 extension classes,扩展类,如/jre/lib/ext下的类

3 user-defined classes, 用户定义类,就比如上边的mainClass。

不过执行上述命令有时候会并闷出现以下错误,

java.lang.SecurityException: no manifest section for signature file entry ...

这是因为有些文件需要签名验证,我们可以手动将这些文件去除从而达到运行的目的.删除META-INF文件罩梁夹下的SUN_MICR.RSA和SUN_MICR.SF文件即可.

mkdir tmp

cd tmp

jar -xvf ../hongchangfirst.jar

rm META-INF/SUN_MICR.*

jar cvf ../hongchangfirst.jar *

cd ..

rm -rf tmp

如果不想太多动源程序的话,可以用java调用shell命令,配慎这胡明样就不限于执行裤卖告Java程序了。

String[] cmd = {"java","-jar","yourjar.jar"}

Runtime.getRuntime().exec(cmd)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12254912.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存