博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java命令行的基本编译运行
阅读量:7024 次
发布时间:2019-06-28

本文共 2434 字,大约阅读时间需要 8 分钟。

1、编译

编写MyProgram.java文件,内容如下:

public class MyProgram {    public static void main(String[] args) {
System.out.println("hello world"); }}

注意:这里没有声明包名,只做了一个最简单的输出helloworld。

用命令行打开java文件所在的目录,然后运行如下命令行,生成class文件:

javac MyProgram.java

此时,会在当前目录下生成java文件对应的class文件。

2、运行

在命令行上输入如下命令:

java MyProgram

注意:这里没有指定后缀是什么文件,java程序默认会找到class文件进行运行。其实这里的名称代表了一个类名,通常情况下类型和文件名是保持一致的,而这里由于省略了包名,当加上包名时,运行的方法应该为:包名.类名。

注意2:如果加了包名,那么一定不能进入到这个包里面运行,要在包名外面运行,比如class/com/jsoft/test/App.class,运行时需要加上包名,并且要在class这层目录下运行,如:class>java com.jsoft.test.App

结果如下:

3、命令行解释及文件说明

java文件:这个就是源文件。

javac命令:javac是java语言编程编译器,负责把java源文件编译成字节码class文件。参考:

class文件:java字节码文件,这个是跨平台的关键,一份java代码对应一份class文件,然后通过java虚拟机JVM进行对应的平台转换(JIT方式)成不同平台的机器码,从而实现跨平台。那么一般一个java的类会生成对应的class的文件,有多少类就有多少的字节码文件。

java:Java 应用程序启动器,同时也是java的虚拟机JVM,用于运行java的字节码文件,翻译成对应的机器码。(控制台)

javaw:(GUI程序)

javaws:(用于web应用程序)

其它:

jdb:Java 应用程序调试程序 

javah:C 头文件和 stub 文件生成器

javap:类文件解析器

javadoc:API 文档生成器

jar:JAR 归档工具 Java 扩展框架

4、参考资料

java字节码的深入理解:

5、测试工程

 

题外:

其实上面测试只是简单的命令行运行,像比较复杂的有多个类,以及多个jar包的互相依赖的,可以参考这里的文章:。这篇文章所说的不是jar包的打法,而是如何使用java命令行去运行。

以下为java命令行的帮助说明:java -h

用法: java [-options] class [args...]           (执行类)   或  java [-options] -jar jarfile [args...]           (执行 jar 文件)其中选项包括:    -d32          使用 32 位数据模型 (如果可用)    -d64          使用 64 位数据模型 (如果可用)    -server       选择 "server" VM                  默认 VM 是 server.    -cp 
<目录和 zip jar 文件的类搜索路径>
-classpath
<目录和 zip jar 文件的类搜索路径>
用 ; 分隔的目录, JAR 档案 和 ZIP 档案列表, 用于搜索类文件。 -D
<名称>
=
<值>
设置系统属性 -verbose:[class|gc|jni] 启用详细输出 -version 输出产品版本并退出 -version:
<值>
需要指定的版本才能运行 -showversion 输出产品版本并继续 -jre-restrict-search | -no-jre-restrict-search 在版本搜索中包括/排除用户专用 JRE -? -help 输出此帮助消息 -X 输出非标准选项的帮助 -ea[:
...|:
] -enableassertions[:
...|:
] 按指定的粒度启用断言 -da[:
...|:
] -disableassertions[:
...|:
] 禁用具有指定粒度的断言 -esa | -enablesystemassertions 启用系统断言 -dsa | -disablesystemassertions 禁用系统断言 -agentlib:
[=
<选项>
] 加载本机代理库
, 例如 -agentlib:hprof 另请参阅 -agentlib:jdwp=help 和 -agentlib:hprof=help -agentpath:
[=
<选项>
] 按完整路径名加载本机代理库 -javaagent:
[=
<选项>
] 加载 Java 编程语言代理, 请参阅 java.lang.instrument -splash:
使用指定的图像显示启动屏幕有关详细信息, 请参阅 http://www.oracle.com/technetwork/java/javase/documentation/index.html。

 

==>如有问题,请联系我:easonjim#163.com,或者下方发表评论。<==

转载地址:http://bmpxl.baihongyu.com/

你可能感兴趣的文章
手工kill掉VNC进程的故障处理
查看>>
python编程练习-字符串移位练习题
查看>>
python---list列表、元组
查看>>
LOG_ARCHIVE_CONFIG
查看>>
oracle 11gR2启用对sys用户操作行为的审计
查看>>
ActionScript3.0 AIR 透明背景+拖动功能
查看>>
C# winform combobox控件中子项加删除按钮(原创)
查看>>
我的友情链接
查看>>
网络工程师眼中的docker
查看>>
十八般武艺之Nginx踩坑总结
查看>>
为什么有人说组装机质量不好
查看>>
本地自旋锁与信号量/多服务台自旋队列-spin wait风格的信号量
查看>>
理想是自欺欺人的好东西
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
3.1 mysql客户端工具
查看>>
Ubuntu 14.04安装强大下载器uGet
查看>>
我的友情链接
查看>>
MySQL主从复制之主库宕机处理;
查看>>
Centos 搭建 zookeeper
查看>>