zl程序教程

您现在的位置是:首页 >  后端

当前栏目

java常用命令

JAVA 常用命令
2023-09-14 09:00:23 时间
tar -cvf sync1.tar weibo*  --exclude=weibo*/logs --exclude=file2 打包文件并且排除多个文件 2.指定Java程序运行所需要的所有jar包 java  -Djava.ext.dirs=.\lib   com.jike
1.打包目录下的所有文件

切换到目录下执行jar   cvf   consumer.jar  * 


tar -cvf sync1.tar weibo*  --exclude=weibo*/logs --exclude=file2 打包文件并且排除多个文件

2.指定Java程序运行所需要的所有jar包

java  -Djava.ext.dirs=.\lib   com.jikexueyuancrm.controller.Consumer

也可以使用:java -cp lib/aaa.jar;lib/bbb.jar;/lib.ccc.jar  com.jikexueyuancrm.controller.Consumer一个一个的指定jar包
但数量太多的话麻烦
(linux系统下用冒号,windows下用分号)


如果使用 -jar 选项,则-cp选项不生效,因为使用-jar,环境变量CLASSPATH和在命令行中指定的所有类路径都被JVM所忽略

正确运行方式如下:
    1、
    java -cp lib\log4j-1.2.14.jar;hello.jar com.dhn.Hello    (com.dhn.Hello为主类)
    在windows下多个jar之间以分号(;)隔开,最后还需要指定运行jar文件中的完整的主类名
    2、
    java -jar hello.jar
    但是需要修改hello.jar中的MANIFEST.MF,通过MANIFEST.MF中的Class-Path来指定运行时需要用到的其他jar,
    其他jar可以是当前路径也可以是当前路径下的子目录。多个jar文件之间以空格隔开
    以下面的MANIFEST.MF文件为例
    Manifest-Version: 1.0
    Main-Class: com.ibm.portalnews.entrance.Main
    Class-Path: lib\commons-collections-3.2.jar lib\commons-configuration-1.5.jar lib\commons-lang-2.3.jar lib\commons-logging.jar lib\dom4j-1.6.1.jar lib\jaxen-1.1-beta-7.jar lib\jdom.jar lib\log4j-1.2.14.jar

    其中Manifest-Version表示版本号,一般由IDE工具(如eclipse)自动生成
    Main-Class 是jar文件的主类,程序的入口
    Class-Path 指定需要的jar,多个jar必须要在一行上,多个jar之间以空格隔开,如果引用的jar在当前目录的子目录下,windows下使用\来分割,linux下用/分割
    Class-Path冒号后面必须要空一个空格,否则会出错

    文件的最后一行必须是一个回车换行符,否则也会出错



jstat -gc pid
可以显示gc的信息,查看gc的次数,及时间。
其中最后五项,分别是young gc的次数,young gc的时间,full gc的次数,full gc的时间,gc的总时间。
jstat -gcutil  11924 统计gc信息统计

jstack -l 92862查看进程及死锁状况

jmap -heap查看内存使用

ls -l /proc/18283 查看java进程的启动路径

jinfo 92862 可以输出并修改运行时的java进程的opts

jinfo -flag MaxPermSize 92862

分析堆文件
jmap -dump:live,file=a.map 3928 导出堆文件
jhat a.map  分析堆文件



java环境配置 | cmd命令 java正常,javac不是内部或外部命令 对Java一窍不通的初学者,正准备准备参照着网上的文档配置Java环境。费了九牛二虎之力是装好了,环境也配好了。cmd窗口验证java -version显示正常,输入javac -version提示 javac不是内部或外部命令,也不是可运行的程序 。全网搜索到的信息基本一致。但是最后都没什么卵用。重装卸载N次,依然不得想要的结果。
记一次java命令执行IDE中java类的入口函数的坑 熟悉java的同学都知道,我们可以直接通过`java命令`执行Java类的`入口函数`,执行时还可以携带参数,参数是以`字符串数组`的形式传递给main入口函数的。 不过现在已经很少使用这种方式执行java代码了,都是通过IDE来执行。
Java执行shell命令 java执行shell命令的方式有很多种,但是在应用的过程中,我们可能会遇上一些特殊的情况,导致执行脚本失败,不生效的场景。
知识分享之Java——Maven常用命令 日常我们开发时,我们会遇到各种各样的奇奇怪怪的问题(踩坑o(╯□╰)o),这个常见问题系列就是我日常遇到的一些问题的记录文章系列,这里整理汇总后分享给大家,让其还在深坑中的小伙伴有绳索能爬出来。 同时在这里也欢迎大家把自己遇到的问题留言或私信给我,我看看其能否给大家解决。