Java 11:运行单文件程序和“ shebang”脚本
在Java 11中,对java
启动器进行了增强,使其可以直接运行单文件源代码程序,而不必先对其进行编译。
例如,考虑以下仅添加其参数的类:
import java.util.*;
public class Add {public static void main(String[] args) {System.out.println(Arrays.stream(args).mapToInt(Integer::parseInt).sum());}
}
在Java的早期版本中,您首先必须编译源文件,然后按以下方式运行它:
$ javac Add.java
$ java Add 1 2 3
6
在Java 11中,无需编译文件! 您可以按以下方式直接运行它:
$ java Add.java 1 2 3
6
甚至没有必要在文件上具有“ .java”扩展名。 您可以随意调用该文件,但是,如果文件不具有“ .java”扩展名,则需要指定--source
选项,以告知java
启动器使用源文件模式。 在下面的示例中,我将文件重命名为MyJava.code
并使用--source 11
运行它:
$ java --source 11 MyJava.code 1 2 3
6
它变得更好! 也可以使用shebang( #!
)机制在基于Unix的系统上直接运行Java程序。
例如,您可以从Add.java
获取代码,并将其放入一个名为add
的文件中,并在文件的开头放上shebang,如下所示:
#!/path/to/java --source 11
import java.util.*;
public class Add {public static void main(String[] args) {System.out.println(Arrays.stream(args).mapToInt(Integer::parseInt).sum());}
}
使用chmod
将文件标记为可执行文件,然后按以下方式运行它:
$ chmod +x add
$ ./add 1 2 3
6
翻译自: https://www.javacodegeeks.com/2019/01/running-single-programs-shebang-scripts.html
Java 11:运行单文件程序和“ shebang”脚本相关推荐
- 单文件程序制作一键通三合一 v5.10 杏雨梨云版
前言 单文件程序制作工具是用于打包制作自解压式单文件的小工具 内置7Z.RAR.ZLIB三种自解压模块,方便自行选择 单文件程序制作三合一 使用说明 链接:https://u9baoku.xyz/66 ...
- Java简易点单小程序
1.流程图 2.代码 2.1 Dishes类 package yaoyanru;public class Dishes {int id;String name;float price;int styl ...
- java bat 运行 jar文件_运行bat文件启动java的jar且不弹出DOS窗口,后台运行java的jar包...
本文主要是将java的jar包启动的cmd命令添加到bat文件来执行,且不弹出DOS窗口,也就是后台运行java的jar包. 这里以win10为例 1.新建 一个txt文件,在文件添加以下内容.其中E ...
- java怎么运行class文件,面试必会
Redis主从复制 概念 Redis的主从复制概念和MySQL的主从复制大概类似.一台主机master,一台从机slaver.master主机数据更新后根据配置和策略,自动同步到slaver从机,Ma ...
- 使用java命令运行class文件提示“错误:找不到或无法加载主类“的问题分析
有时候我们需要直接用jdk提供的java命令来执行class文件让软件运行起来,特别是很多初学者,但经常会发现如下提示: 用eclipse或用ant则没有问题. 其实原因很简单,我们忽略了2个细节. ...
- java jnlp 运行_JNLP文件如何能成功安装运行?
展开全部 具体如下: 1.第copy一步,百度搜索jre并下bai载,见下图,转到下面du的步骤. 2.第zhi二步,完成上述步骤后,根据计dao算机的情况选择要下载的版本,见下图,转到下面的步骤. ...
- java bat运行jar文件_windows下bat批量运行jar包
1. 在cmd下,java -jar ***.jar 运行后窗口不能关,但如果有多个jar,则会有多个cmd的窗口,很难看 2. 在cmd下,javaw -jar ***.jar运行后窗口可以关,但如 ...
- 让windows 11运行安卓apk程序,mac+win双系统
第一步,把自己的win10升级到win11,采用了win10.win11镜像,将win11中的appraiserres.dll删除,拷入win10的appraiserres.dll文件,双击setup ...
- java命令运行class文件提示错误:找不到或无法加载主类
原址: https://www.huaweicloud.com/articles/8357620.html
最新文章
- tensorflow 转 numpy 转 tensorflow
- (24)2-9-9-12分页(上)
- JavaScriptWindow使用对象
- ps图片拖不进去_PS教学:你的logo还不够高大上?7步教做出黄色金属质感logo
- python 爬虫代理_python 爬虫 使用代理 的问题
- map怎么转化dto_使用MapStruct进行Dto到实体的转换时出错
- mysql投票网站_PHP+Mysql实现网站顶和踩投票功能实例
- c++通过pybind11制作模型python接口,生成python调用包
- Python3之logging模块
- jfinal 模板引擎
- mysql的sql优化工具_DBA的五款最佳SQL查询优化工具,收藏了
- java如何高效查询重复数据_java – jpa条件查询获取列表中的重复值
- Require statement not part of import statement. eslint@typescript-eslint/no-var-requires报错修改
- AWS ARN 学习
- Linux如何实现网络通信
- Python描述数据结构之链表实战篇
- TTE系统容错设计(2) ——COM/MON机制
- 人工智能知识全面讲解:机器学习的类型
- 工业元宇宙 三人行系列直播 12场规划
- 工具说明书 - 使用网页生成条码
热门文章
- 【树链剖分】Disruption P(luogu 4374)
- SpringCloud Greenwich(四)注册中心之eureka、Zuul和 gateway网关配置
- java中判断一个字符在字符串中出现的次数
- springmvc报错 nested exception is org.mybatis.spring.MyBatisSystemException:
- JS向对象中添加和删除属性
- 2017蓝桥杯省赛---java---A---7(正则问题)
- php无限极菜单,无限极菜单的实现
- 尚硅谷2020最新版SpringCloud(H版alibaba)框架开发教程全套完整版从入门到精通
- Linux ss 热点,在Linux系统下的ss命令(socket statistics)各种使用示例
- java异常 字节码,Java字节码角度分析异常处理