关于Java程序入口args参数

关于Java程序入口args参数

我们都知道一个java工程会有一个主程序入口,即我们常见到的如下代码

public static void main(String[] args) {// 中间程序
}

但是很多人可能都不知道主程序入口中的String[] args后面的args会有怎么样一个使用场景呢?
其实在Java的main方法中,args是一个String类型的数组参数,用于接收命令行传入的参数。当我们在命令行中运行Java程序时,可以在命令行中通过空格分隔的形式传入一些参数,这些参数会作为字符串元素存储在args数组中,那么我们接下来用实际例子来说明这种情况。

实例说明

第一步:我们假设设置这么样一个工程目录,工程路径:D:\1.JAVA\JmeterDemo
在这里插入图片描述
第二步:在HelloWorld.java中编写如下代码

package com.test.demo;public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");//获取输入的参数,并且进行打印System.out.println("input param:" + args.length);for (int i = 0; i < args.length; i++) {System.out.println("param " + (i+1) + ": " + args[i]);}}
}

第三步:对HelloWorld.java进行编译,使用终端进入对应的文件:HelloWorld.java路径

D:\1.JAVA\JmeterDemo\src\com\test\demo>javac HelloWorld.java

第四步:编译以后,在同样的路径下执行如下命令

D:\1.JAVA\JmeterDemo\src>java com.test.demo.HelloWorld arg1 arg2 arg3

第五步:我们可以得到对应的结果如下:

Hello, World!
input param:3
param 1: arg1
param 2: arg2
param 3: arg3

碰到的坑

1.没有进行编译,直接执行java命令,此时我们会发现如下报错:

D:\1.JAVA\JmeterDemo\src>java com.test.demo.HelloWorld arg1 arg2 arg3
错误: 找不到或无法加载主类 com.test.demo.HelloWorld

2.带有package的路径,但是没有执行对应添加执行对应的package路径,上述代码我们能够看到package的路径是package com.test.demo

package com.test.demo;

但是我们在执行的时候是这样的命令

D:\1.JAVA\JmeterDemo\src>java HelloWorld arg1 arg2 arg3

那么你会得到如下报错:

D:\1.JAVA\JmeterDemo\src>java HelloWorld arg1 arg2 arg3
错误: 找不到或无法加载主类 HelloWorld

错误: 找不到或无法加载主类 HelloWorld
此时有人会说,你这个路径不对,HelloWorld的路径是D:\1.JAVA\JmeterDemo\src\com\test\demo这个,但是此时如果你在这个路径下执行命令的话,同样会报这个错误,所以我们需要将package中的路径带上,如上述第四步执行的命令。
3. 环境变量设置问题(小编未碰到,待各位小伙伴去试验),主要注意以下几点:
①JAVA_HOME路径是否正确,应为安装的文件夹位置
②CLASSPATH路径是否正确,正确的路径如下:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\tools.jar
【注意】上述的 .; 不可省略。
第三个问题引用的内容来自这里

https://blog.csdn.net/edelweiss0o0/article/details/121712814

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/843416.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬虫逆向实例小记——某数据知识管理网站-DES-ECB模式

aHR0cHM6Ly9rZC5uc2ZjLmNuL2ZpbmFsUHJvamVjdEluaXQ 注意&#xff1a;本文是逆向部分比较少&#xff0c;主要为了流程走通&#xff0c;限于代码搬运工。 第一步:分析页面 此网站经过请求响应&#xff0c;可以看出响应内容为加密内容。 第二步&#xff1a;判断加密类型 在XHR …

java.lang.NumberFormatException: For input string:

创建SpringBoot&#xff0c;Mybatis的项目时候&#xff0c;Service层调用Mapper层时候爆出了一个错误 发现报错是一个类型转换错误&#xff0c;经过排查后发现是因为mapper接收的实体类中没有写空参构造

Redis 中 List 数据结构详解

目录 List 用法 1. 增 2. 删 3. 查 内部编码 应用场景 前言 Redis 中的 List 和 Set 数据结构各有特点&#xff0c;适用于不同的应用场景。List 提供了有序的列表结构&#xff0c;适合用于消息队列和任务列表等场景&#xff1b;Set 提供了无序且不重复的集合结构&#…

Redis常用命令——Hash篇

前面我们讲述了String的相关操作命令。本篇文章主要讲解Redis中数据结构Hash的相关操作命令。希望会对你有所帮助。 目录 一、Hash哈希 二、命令 HSET HGET HEXISTS HDEL HKEYS HVALS HGETALL HMGET HLEN HSETNX HINCRBY 和 HINCRBYFLOAT 三、小结 &#x1f64b;‍♂️ 作者&a…

React 供应商选择组件 - 使用Ant Design渲染Select并与父组件Form同步数据

1、安装Ant Design的相关依赖&#xff1a; npm install antd ant-design/icons2、编写SupplierSelect组件的代码如下&#xff1a; import React, { useEffect, useState } from react; import { Select } from antd; import axios from axios;const { Option } Select;const…

Spring的FactoryBean多例问题

关于spring bean&#xff0c;我们了解的最多的还是单例&#xff0c;而多例bean,除了平时我们自己new的那些多实例外&#xff08;但不属于IOC管理了&#xff09;&#xff0c;几乎很少能用到&#xff0c;而在spring 层面&#xff0c;FactoryBean刚好是多例的一个体现&#xff0c;…

【介绍下如何在SQL中添加数据】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

淘宝扭蛋机小程序:探索未知,扭出惊喜

在数字时代&#xff0c;我们一直在寻找一种新颖、有趣且充满惊喜的购物方式。淘宝扭蛋机小程序正是为了满足这一需求而诞生的创新之作&#xff0c;它将传统扭蛋机的乐趣与淘宝的丰富商品库完美结合&#xff0c;为您带来前所未有的购物体验。 打破传统&#xff0c;创新玩法 淘…

ABB焊接功能介绍

1.基本配置 1.2配置Robot Ware Arc 2.焊接语句 2.1直线焊接语句 过渡点指令必须位于起弧指令与熄弧指令之间&#xff0c;不能单独使用。 2.2直线焊接示例 2.3圆弧焊接语句 2.4圆弧焊接示例 2.5摆动参数 关于ABB焊接机器人摆动参数设定 一般情况下&#xff0c;主要设置以…

养老院管理系统基于springboot的养老院管理系统java项目

文章目录 养老院管理系统一、项目演示二、项目介绍三、系统部分功能截图四、部分代码展示五、底部获取项目源码&#xff08;9.9&#xffe5;带走&#xff09; 养老院管理系统 一、项目演示 养老院管理系统 二、项目介绍 基于springboot的养老院管理系统 角色&#xff1a;超级…

再创佳绩丨达梦数据库一体机荣获2024数字中国创新大赛·信创赛道总决赛一等奖

5月24日&#xff0c;第七届数字中国建设峰会在福州盛大开幕&#xff0c;峰会内容安排包含开幕式、主论坛、分论坛、数字中国创新大赛、现场体验区及成果发布和专业工作会议等。武汉达梦数据库股份有限公司(以下简称达梦数据)受邀参加并在展、会、赛等多个环节深度参与。达梦全栈…

【数据结构与算法 | 基础篇】力扣232, 225

1. 力扣232 : 用栈实现队列 (1). 题 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作&#xff08;push、pop、peek、empty&#xff09;&#xff1a; 实现 MyQueue 类&#xff1a; void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移…

dolphinscheduler standalone安装

官方文档&#xff1a;https://dolphinscheduler.apache.org/en-us/docs/3.1.3/guide/installation/standalone 1.安装&#xff08;以放在/home为例&#xff09; 下载见&#xff1a;https://download.csdn.net/download/taotao_guiwang/89311365 tar -xvzf apache-dolphinsche…

pytorch比较操作

文章目录 常用的比较操作1.torch.allclose()2.torch.argsort()3.torch.eq()4.torch.equal()5.torch.greater_equal()6.torch.gt()7.torch.isclose()8.torch.isfinite()9.torch.isif()10.torch.isposinf()11.torch.isneginf()12.torch.isnan()13.torch.kthvalue()14.torch.less_…

学习前端第四十一天(节点属性,特性和属性)

一、节点属性 1、nodeType属性&#xff0c;获取 DOM 节点类型 对于元素节点 elem.nodeType 1&#xff0c; 对于文本节点 elem.nodeType 3&#xff0c; 对于注释节点 elem.nodeType 8&#xff0c; 对于 document 对象 elem.nodeType 9&#xff0c; 2、nodeName和tagNa…

NLP技术发展和相关书籍分享

自然语言处理&#xff08;Natural Language Processing&#xff0c;NLP&#xff09;是计算机科学领域和人工智能领域的重要研究方向之一&#xff0c;旨在探索实现人与计算机之间用自然语言进行有效交流的理论与方法。它融合了语言学、计算机科学、机器学习、数学、认知心理学等…

C++中的异常处理

文章目录 前言一、异常处理的代码实现二、异常规范总结 前言 异常处理是一种在软件开发中用于处理程序运行时错误的机制。在C中&#xff0c;异常处理的基本思想是将异常情况与正常情况进行区分&#xff0c;当异常情况发生时&#xff0c;程序不会继续执行下去&#xff0c;而是转…

外卖系统源码解读:校园外卖APP开发全攻略

外卖系统源码解读&#xff1a;校园外卖APP开发全攻略 今天&#xff0c;小编将深入解读外卖系统的源码&#xff0c;详细介绍如何开发一款功能齐全的校园外卖APP&#xff0c;帮助开发者快速上手&#xff0c;打造出高质量的外卖应用。 一、需求分析 应具备以下基本功能&#xff…

idea的project structure下project [lauguage ]()level 没有java的sdk17选项如何导入

idea的project structure下project lauguage level 没有java的sdk17选项如何导入 别导入了&#xff0c;需要升级idea版本。idea中没有project language level没有17如何添加 - CSDN文库 别听这文章瞎扯淡 2021版本就是没有&#xff0c;直接卸载升级到最新版本就可以了。没办法…

关系型数据库的三范式理解

关系型数据库的三范式&#xff08;Third Normal Form&#xff0c;3NF&#xff09;是数据库设计中的一种规范化理论&#xff0c;用于减少数据冗余和提高数据一致性。三范式是建立在第一范式&#xff08;1NF&#xff09;和第二范式&#xff08;2NF&#xff09;的基础上的。以下是…