Java 11 马上要来了,原定于 9 月发布,还有不到 3 个月了,敬请期待更多新功能被加入到 11 当中,本文本讲的是 JEP 330 这个新特性。

化繁为简,一个命令编译运行源代码

看下面的代码。

// 编译
javac Javastack.java// 运行
java Javastack

在我们的认知里面,要运行一个 Java 源代码必须先编译,再运行,两步执行动作。而在未来的 Java 11 版本中,通过一个 java 命令就直接搞定了,如以下所示。

java Javastack.java

然而,这也并没有什么卵用。我们大部分开发工作都在 IDE 工具中,所有的编译运行过程都由 IDE 完成的,真正用到命令行来编译、运行的场景真的非常少。当然,如果你是记事本大神,请收下这个功能。

从另外一面来看,这是不是意味着 javac 要退出历史舞台了呢?不会。因为,还是需要编译源代码的命令的,而不是直接运行。

支持 Shebang #! 符号运行 Java 程序

Shebang #! 这是什么鬼?这也是 JEP 330 里面的相关技术,它能支持在 UNIX 系统脚本中运行 Java 程序,如以下代码所示。

#!/path/to/java --source version

JEP 330 总结

Oracle JEP 330 这个特性只是为了为了编译和运行小型的 Java 应用程序而提供的,而不是使用 Java 变成成能通用性语言。这个特性评审时就饱受争议,但最终达成共识确认会被加入到 Java 11 新版本当中。

参考资料:https://securityonline.info/jdk-11-will-introduce-shebang-symbol/

推荐:Spring Boot & Cloud 最强技术教程

扫描关注我们的微信公众号,干货每天更新。

转载于:https://blog.51cto.com/honly/2131805

Java 11 快要来了,编译 运行一个命令搞定!相关推荐

  1. Win10 OneDrive无法同步文件怎么办?一个命令搞定

    很多用户喜欢用微软的OneDrive云盘工具,在Win7时代用户需要自行下载客户端,而在Win8.1/Win10中则成为了系统自带功能,免去了下载安装的麻烦.OneDrive同步功能可以很方便地在不同 ...

  2. onedrive电脑手机不同步_Win10 OneDrive 无法同步文件怎么办?一个命令搞定

    很多用户喜欢用微软的OneDrive云盘工具,在Win7时代用户需要自行下载客户端,而在Win8.1/Win10中则成为了系统自带功能,免去了下载安装的麻烦.OneDrive同步功能可以很方便地在不同 ...

  3. 编译运行一个java程序_如何从另一个Java程序编译和运行Java程序

    编译运行一个java程序 Have you ever thought if it's possible to compile and run a java program from another j ...

  4. IDEA如何执行一个包内的程序时不报另一个包内程序的错误 IDEA如何只编译运行一个包内的程序

    有时候想编译运行一个包内的程序时会报错同一个项目下的另一个包内程序的错误,如何跳过有错误不想执行的包内的程序,只执行想执行包内的程序呢 首先右键想跳过执行的包 选择 Mark Directory as ...

  5. linux下软件编译终止,[2018年最新整理]linux下编译运行程序命令大全.ppt

    [2018年最新整理]linux下编译运行程序命令大全 1. 项目课题引入 2. Vi编辑器的使用方法 3. Linux中C语言程序的编辑 4. Linux中C语言程序的运行 5. 现场演示案例 课题 ...

  6. 封装一个类搞定90%安卓客户端与服务器端交互

    本实例封装了一个处理安卓客户端与服务器端交互的几个方法,对于中文乱码问题本实例也找到了解决方案.本例可以处理的场景如下: 1.与服务器端交互json数据. 2.Get方式与服务器端交互数据. 3.Po ...

  7. 通用人工智能最新突破!一个Transformer搞定一切

    Datawhale干货 编辑:梦晨 鱼羊,来源:量子位 通用人工智能,还得看DeepMind. 这回,只一个模型,使用相同的权重,不仅把看家本领雅达利游戏玩得飞起. 和人类聊聊天.看图写话也不在话下. ...

  8. 将你的前端应用打包成docker镜像并部署到服务器?仅需一个脚本搞定

    1.前言 前段时间,自己搞了个阿里云的服务器.想自己在上面折腾,但是不想因为自己瞎折腾而污染了现有的环境.毕竟,现在的阿里云已经没有免费的快照服务了.要想还原的话,最简单的办法就是重新装系统.而一旦重 ...

  9. labview 重新启动后上次_还在为labview保存参数而苦恼吗?看看一个vi搞定全部

    2020labview懒人参数存取-升级版 问题:项目编程过程中,参数存取是无论如何也没法避免的一个环节,因为程序设置完成后,下次再打开时如果要执行上次设置的参数,就需要加载上次保存的参数文件.那么以 ...

最新文章

  1. java 自定义函数_jxTMS--java与python的协作
  2. php 循环curl,php中使用foreach curl多个URL及多线程请求多个URL
  3. HD Piggy-Bank完全背包
  4. Linux-在linux修改文件夹及其子文件夹的权限
  5. 【PL/SQL】异常处理
  6. [LeetCode] 47. Permutations II_Medium tag: DFS, backtracking
  7. 配置vscode作为STM32代码的编辑器(替代keil5)。实现:代码自动补全, 编译,下载。nRF52也可以编译。
  8. 【面向校招】Golang面试题总结
  9. Go语言系列——Go语言介绍
  10. matlab每个循环命令行窗口输出,【matlab】命令行窗口一直不停的输出ans=1?
  11. C++语言的特点有哪些
  12. 人工智能时代,数据标注产业将迎来黄金时期?丨曼孚科技
  13. 港科夜闻|香港科大举办网上招生说明会,详细解读招生政策。
  14. IO流原理及流的分类
  15. 侧耳倾听中日对照剧本
  16. 仿牌独立站如何通过PayPal.Me亲友付进行收款
  17. 可行性、易用性性与用户体验的区别
  18. JS实现华为账号授权服务,一键登录!
  19. 我的架构梦:(九十八)消息中间件之RocketMQ的高可用机制——消息发送高可用
  20. 海盗王实现物品999个堆叠

热门文章

  1. java科学计数字符串显示
  2. POJ 2749 Building roads
  3. Virtual PC 使用指南
  4. [轉]SQL Server 2005备份维护计划
  5. HTML在线编辑器控件
  6. mui ajax ab,mui.ajax中文乱码
  7. [AngularJS学习笔记] 基础学习01
  8. eclipse怎么设置字体大小非原创
  9. 【转】深入浅出REST
  10. latex 公式转图片