如何使用命令行编译以及运行java文件

2023-11-06

要想编译和运行java文件,很简单,只需要两个命令:

(1) javac:作用:编译java文件;使用方法: javac Hello.java ,如果不出错的话,在与Hello.java 同一目录下会生成一个Hello.class文件,这个class文件是操作系统能够使用和运行的文件。

(2) java: 作用:运行.class文件;使用方法:java Hello,如果不出错的话,会执行Hello.class文件。注意:这里的Hello后面不需要扩展名。

下面举例说明:

1、不引入第三方jar包

在某个路径下创建一个Hello.java文件,
在这里插入图片描述
打开改文件,编写代码:

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

打开cmd,进入到改路径下:
在这里插入图片描述
然后输入javac Hello.java,该文件夹下面生成了一个Hello.class文件
在这里插入图片描述
输入java Hello,终端打印出代码里的打印内容Hello world!
带参数的命令:java Hello a1 a2
所需的参数直接用空格分开即可
在这里插入图片描述

2、引入第三方jar包(直接列举jar包名)

使用命令javac -cp或者javac -classpath

在某个路径下创建EnvironmentTest.java,编辑代码

import org.springframework.context.i18n.LocaleContextHolder;
public class EnvironmentTest {
    public static void main(String[] args) {
        System.out.println(LocaleContextHolder.getLocale().getLanguage());
    }
}

加入所引用的第三方jar包
在这里插入图片描述
cmd终端进入到改路径下;输入:

javac -classpath E:\JAVA-WorkSpace\IDEA-WorkSpace\SimpleProjects-Workspace\build\src\spring-context-5.1.2.RELEASE.jar;spring-core-5.1.2.RELEASE.jar; EnvironmentTest.java

在该路径下生成了.class文件
在这里插入图片描述
运行该文件,输入:

java -classpath E:\JAVA-WorkSpace\IDEA-WorkSpace\SimpleProjects-Workspace\build\src\spring-context-5.1.2.RELEASE.jar;spring-core-5.1.2.RELEASE.jar; EnvironmentTest

在这里插入图片描述

3 引入第三方jar包(不列举jar包名)

在个人平常使用或者当我们把代码部署到服务器上的时候,我们经常需要通过命令行编译和运行java文件,网上关于这个的方法大多是通过

javac -cp filePath/jarName.jar javaName.java

这种方法。
但是假如在filepath文件夹下面有好几个jar包,在src文件夹中有好几个java文件的时候,这个方法就很笨拙了,下面一个非常简单的指令就可以解决了:

javac -Djava.ext.dirs=filePath  *.java//注意这里只需要指定到jar包所在的文件夹就可以了

其中*.java表示可以一次编译所有的java文件。

实例演示:

建立java文件和第三方jar包
在这里插入图片描述

cmd终端进入到改路径下;输入:
编译多个java文件

javac -Djava.ext.dirs=E:\JAVA-WorkSpace\IDEA-WorkSpace\SimpleProjects-Workspace\build\src *.java

运行

java -Djava.ext.dirs=E:\JAVA-WorkSpace\IDEA-WorkSpace\SimpleProjects-Workspace\build\src EnvironmentTest

在这里插入图片描述

3 引入第三方jar包(把编译文件放到指定目录)

如果想要把编译后的文件放到指定目录,只需要在java文件后加上 -d outputFilePath就可以了,例如下面:

javac -Djava.ext.dirs=filePath  *.java  -d outputFilePath

实例演示:
在这里插入图片描述
编译过程

//首先进入src文件夹

javac -Djava.ext.dirs=../library  *.java -d ../output

//指定输出编译文件的位置为上级目录的output文件夹

在这里插入图片描述
output下面有了编译文件
在这里插入图片描述
执行过程

先进入output文件夹

//主函数所在文件是EnvironmentTest.java
java -Djava.ext.dirs=../library  EnvironmentTest

在这里插入图片描述

以上是在windows环境中测试的,以后在linux环境下再测试一下。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用命令行编译以及运行java文件 的相关文章

随机推荐

  • HTML详解连载(3)

    HTML详解连载 3 专栏链接 link http t csdn cn xF0H3 下面进行专栏介绍 开始喽 表单 作用 使用场景 input标签基本使用 示例 type属性值以及说明 input标签占位文本 示例 注意 单选框 radio
  • 报错django.db.utils.DataError: (1406, "Data too long for column 'gender' at row 1")的解决办法

    参考解决方案 Traceback most recent call last File C Users rHotD AppData Local Programs Python Python35 lib site packages djang
  • 【华为机试真题 JAVA】非严格递增连续数字序列-100

    编程题目 100分 非严格递增连续数字序列 2022 Q1 Q2 考试题 时间限制 C C 1秒 其他语言 2秒 空间限制 C C 262144K 其他语言524288K 64bit IO Format lld 本题可使用本地IDE编码 不
  • react+antd mobile实现 H5底部tab页面

    1 引入底部tab页所需组件 第二步 创建tabs负责放入底部的页面路由 第三步在return里面对tab进行配置以及引用所需的页面组件内 其中 activekey 是切换tab的key值当他切换等于对应的路由是就展示对应的页面
  • 【Java】将文本转化成语音

    1 需要的jar包 2 把dll文件放在 JAVA HOME bin下 注意系统是32位还是64位 也可以放在C Windows System32下 如果是64位应该放在C Windows SysWOW64 下 3 java代码 impor
  • CA2W格式化多个时需要加强制转换,CDuiString格式化也需强转

    CString str str Format L s CM2W ss data str Format L s s LPCTSTR CM2W ss data LPCTSTR CM2W asdfg str Format L s LPCTSTR
  • 基于Zynq FPGA对雷龙SD NAND的测试

    文章目录 一 SD NAND特征 1 1 SD卡简介 1 2 SD卡Block图 二 SD卡样片 三 Zynq测试平台搭建 3 1 测试流程 3 2 SOC搭建 四 软件搭建 五 测试结果 六 总结 一 SD NAND特征 1 1 SD卡简
  • webpack5学习进阶:多页面应用、Tree Shaking、PWA、Shimming

    文章目录 一 多页面应用 1 entry 配置 1 1 将两个本地文件打包在一起 1 2 还可以打包第三方库文件 1 3 多页面打包 2 index html 模板配置 3 多页面环境搭建 二 Tree Shaking 摇树优化 1 配置
  • rocketMQ系列(一): 消息中间件及rocketMQ简介

    一 消息中间件介绍 消息中间件是基于队列与消息传递技术 在网络环境中为应用系统提供同步或异步 可靠的消息传输的支撑性软件系统 消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流 并基于数据通信来进行分布式系统的集成 通过提供消息传递
  • 什么是弱网测试?为什么要进行弱网测试?怎么进行弱网测试?

    什么是弱网测试 由于处在移动互联网盛行的时代 网络形态除了有线连接外 还有2G 3G 4G Wifi 5G等多种手机网络连接方式 首先额外补充一些5G的知识 2分钟了解什么是5G 在前不久结束的 MWC 2018 上 5G 成了全球的一个热
  • caffe-python lmdb 读写(转)

    lmdb write import lmdb import numpy as np import cv2 import caffe from caffe proto import caffe pb2 basic setting 这个设置用来
  • ORA-01186/ORA-01122/ORA-01110/ORA-01206

    author skate time 2011 12 14 在前几天检查一套DG库的时候 当read only打开stanby库的时候 在alert log里发现错误log如下 Wed Dec 14 15 45 19 2011 Complet
  • vb excel编程实例_有VB的基础,如何学习VBA

    VBA的全称Visual Basic for Applications 在Office等许多软件中 看到的宏 便是VBA 基于我的理解 VB基础指什么 这里的VB基础指能够看得懂简单的VB代码 对if结构 for结构有一定的认识 理解变量有
  • 【华为OD统一考试B卷

    在线OJ 已购买本专栏用户 请私信博主开通账号 在线刷题 运行出现 Runtime Error 0Aborted 请忽略 华为OD统一考试A卷 B卷 新题库说明 2023年5月份 华为官方已经将的 2022 0223Q 1 2 3 4 统一
  • Spring Data 查询方法的规则定义(五)

    有句话这样说 欲练神功 挥刀自宫 请亲们先回到第一个 从Spring data 介绍 开始看 搭好环境 跟着步伐一块走 Spring Data 的方法必须严格按照它的规范进行编写 如果写错了就不行 下面是网上找的一张图 仔细看 咱们先拿几个
  • Mutimap用法

    Multimap 1 创建 Multimap
  • 牛客网&&华为机试&&坐标移动

    牛客网 华为机试 坐标移动 代码实现 include
  • 分库分表实战之从根上带你吃透MySQL的索引

    V xin ruyuanhadeng获得600 页原创精品文章汇总PDF 问题分析 为什么查询变慢呢 接上期 我们知道了MySQL查询的全过程 也知道了整个过程的瓶颈在于磁盘IO 那怎么降低磁盘IO次数呢 答案就是索引 正确的使用索引 我们
  • css3网格布局

    网格布局是flex的升级版 父级属性display grid 即可把这个div变成网格 父级属性grid template columns 20 20 20 20 设置有多少列 每列有多宽 auto自动填 1fr 2fr 设置比例倍数 父级
  • 如何使用命令行编译以及运行java文件

    要想编译和运行java文件 很简单 只需要两个命令 1 javac 作用 编译java文件 使用方法 javac Hello java 如果不出错的话 在与Hello java 同一目录下会生成一个Hello class文件 这个class