macOS 用户可以运行 Java 的开源版本,以及用于云原生开发的新框架。

  • 来源:https://linux.cn/article-12393-1.html
  • 作者:Daniel Oh
  • 译者:MCGA

(本文字数:4288,阅读时长大约:5 分钟)

macOS 用户可以运行 Java 的开源版本,以及用于 云原生(cloud native)开发的新框架。

五月底,Java 庆祝了它的 25 周年纪念日,为了纪念这一时刻,世界各地的开发人员使用 #MovedByJava 这一标签分享他们使用这一编程语言的成就、记忆以及愿景。

我的时间线:

1999 开始学习 Java2007 创建 @grailsframework2008 共同创建 G20ne2009 被 SpringSource 收购2015 加入 @ObjectComputing2018 创建 @micronautfw / 获得 @groundbreakers 奖2019 成为 @Java_Champions

感谢你 @java ! #MovedByJava

— Graeme Rocher (@graemerocher) 2020年5月21日

多年来,许多技术和趋势都促进了 Java 堆栈的开发、部署和在标准应用程序服务器上运行多个应用的能力。为 Kubernetes 构建容器镜像使得 Java 开发者可以在多个云环境中打包和部署 微服务 (microservices),而不是在虚拟机上运行几个应用程序服务器。

Timeline of technology contributions to Java

有了这些技术,Java 应用程序栈被优化为运行更大的堆和可以在运行时做出决策的高动态框架。然而不幸的是,这些努力还不足以使 Java 成为开发人员为 无服务器(serverless)和事件驱动平台开发 云原生(cloud native) Java 应用程序的首选编程语言。其他语言填补了这部分空缺,特别是 JavaScript、Python 和 Go,而 Rust 和 WebAssembly 也成了新的选择。

尽管存在这种竞争, 云原生 Java (cloud native Java) 正在对以云为中心的软件开发产生影响。好在,新的 Java 框架(比如, Quarkus 、 Micronaut 和 Helidon )最近已经战胜了这些挑战,它们提供了编译速度更快而且更小的应用,同时它们在设计之初就将分布式系统考虑了进去。

如何在 macOS 上安装 Java

Java 开发的未来将从更多人安装和使用 Java 开始。因此,我将介绍如何在 macOS 上安装并开始使用 Java 开发环境。(如果你运行的是 Linux,请查看 Seth Kenlon 的文章《 如何在 Linux 上安装 Java 》)

通过 Brew 仓库安装 OpenJDK

Homebrew 是 macOS 事实上的标准软件包管理器。如果你还没有安装的话,Matthew Broberg 的文章《 Homebrew 简介 》将带你完成这些步骤。

当你在 Mac 上安装好 Homebrew 后,使用 brew 命令安装 OpenJDK ,这是编写 Java 应用程序的开源方式:

$ brew cask install java

不到一分钟就能看到:

 java was successfully installed!

通过 java -version 命令确认 OpenJDK 已经正确安装:

$ java -versionopenjdk version "14.0.1" 2020-04-14OpenJDK Runtime Environment (build 14.0.1+7)OpenJDK 64-Bit Server VM (build 14.0.1+7, mixed mode, sharing

从输出中可以确认 OpenJDK 14 (本文撰写时的最新版本)已经安装。

从二进制文件安装 OpenJDK

如果你并不热衷于包管理器,并且更愿意自己来管理 Java 的话,那么你总是可以选择下载并且手动安装。

我在 OpenJDK 主页上找到了最新版本的下载链接。下载 OpenJDK 14 的二进制文件:

$ wget https://download.java.net/java/GA/jdk14.0.1/664493ef4a6946b186ff29eb326336a2/7/GPL/openjdk-14.0.1_osx-x64_bin.tar.gz

移动到你保存二进制文件的目录,然后解压:

$ tar -xf openjdk-14.0.1_osx-x64_bin.tar.gz

接下来,将 Java 加入到你的 PATH:

$ export PATH=$PWD/jdk-14.0.1.jdk/Contents/Home/bin:$PATH

同时,将这条命令加到你的点文件中,.bash_profile 还是 .zshrc 取决于你运行的 shell。你可以在《 如何在 Linux 中设置你的 PATH 变量][23]》一文中了解更多关于配置 `PATH变量][23]》一文中了解更多关于配置‘ 》一文中了解更多关于配置 $PATH 变量的内容。

最后,验证你安装的 OpenJDK 14:

$ java -versionopenjdk version "14.0.1" 2020-04-14OpenJDK Runtime Environment (build 14.0.1+7)OpenJDK 64-Bit Server VM (build 14.0.1+7, mixed mode, sharing)

在 Mac 上编写你的第一个 微服务 (microservices)

现在,你已经准备好在 maxOS 上使用 OpenJDK 堆栈开发 云原生(cloud native) Java 应用程序了。在本教程中,你将在 Quarkus 上创建一个新的 Java 项目,这个项目使用 依赖注入(dependency injection)来公布 REST API。

你需要 Maven 启动,它是一个非常流行的 Java 依赖管理器。从 Maven 的网站 安装 它,或者通过 Homebrew 使用 brew install maven 命令。

执行以下 Maven 命令来配置 Quarkus 项目,并且创建一个简单的 web 应用:

$ mvn io.quarkus:quarkus-maven-plugin:1.5.1.Final:create     -DprojectGroupId=com.example     -DprojectArtifactId=getting-started     -DclassName="com.example.GreetingResource"     -Dpath="/hello"cd getting-started

运行这个应用:

$ ./mvnw quarkus:dev

当应用程序运行的时候,你可以看到这个输出:

__  ____  __  _____   ___  __ ____  ______ --/ __ / / / / _ | / _ / //_/ / / / __/ -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /   --________/_/ |_/_/|_/_/|_|____/___/  2020-06-13 00:03:06,413 INFO  [io.quarkus] (Quarkus Main Thread) getting-started 1.0-SNAPSHOT on JVM (powered by Quarkus 1.5.1.Final) started in 1.125s. Listening on: 2020-06-13 00:03:06,416 INFO  [io.quarkus] (Quarkus Main Thread) Profile dev activated. Live Coding activated.2020-06-13 00:03:06,416 INFO  [io.quarkus] (Quarkus Main Thread) Installed features: [cdi, resteasy]

使用 curl 命令访问 REST 端点:

$ curl -w "" http://localhost:8080/hellohello

恭喜!通过使用 Mavan 和 Quarkus,你很快从没有安装 Java 的环境里创建了第一个 web 应用。

接下来用 Java 做什么

Java 是一个成熟的编程语言,通过专门为 云原生(cloud native)应用程序开发设计的新框架,Java 的热度会一直持续下去。

如果你正走在这样构建未来应用的路上,你可能会对更多实用的 Quarkus 开发课程或其他现代化框架感兴趣。无论你在构建什么,下一步是配置你的文本编辑器。阅读我关于《 在 VS Code 用 Quarkus 编写 Java 》的教程,然后再看看你能做什么。


java安装_如何在 Mac 上安装 Java | Linux 中国相关推荐

  1. couchdb 安装_如何在Ubuntu上安装CouchDB –分步指南

    couchdb 安装 In this tutorial, we'll go over how to install CouchDB on Ubuntu. CouchDB is a NoSQL data ...

  2. mac安装ios应用程序_如何在Mac上安装应用程序:您需要知道的一切

    mac安装ios应用程序 If you're switching to macOS from Windows, you might be confused about installing softw ...

  3. linux deb文件安装_如何在 Ubuntu 上安装 VirtualBox | Linux 中国

    本新手教程解释了在 Ubuntu 和其他基于 Debian 的 Linux 发行版上安装 VirtualBox 的各种方法.-- Abhishek Prakash Oracle 公司的自由开源产品 V ...

  4. mac上java文件如何编译_如何在Mac上用Java编译和运行程序?

    小编典典 在Mac OSX或任何主要操作系统上编译和运行Java应用程序非常容易.Apple随OSX一起提供了一个功能齐全的Java运行时和开发环境,因此您要做的就是编写Java程序并使用内置工具来编 ...

  5. 【转】如何在Mac上卸载Java及安装Java

    如何在 Mac 上卸载 Java? 本文适用于: 平台: Macintosh OS X Java 版本: 7.0, 8.0 使用终端卸载 Oracle Java 注:要卸载 Java,必须具有管理员权 ...

  6. 如何在Mac上安装IntelliJ IDEA

    不同的开发者想要安装IDEA的目的不一样,有的想来开发Java,有的可以开发Android(Android Studio就是由IDEA修改而来的),有的想开发网页应用.不得不承认,IDEA还是比较强大 ...

  7. 如何在Mac上安装Node.js和NPM

    原作者:Dave McFarland  翻译转载:https://blog.teamtreehouse.com/install-node-js-npm-mac 如何在Mac上安装Node.js和NPM ...

  8. 如何在MAC上安装RocketMQ实现消息发送?

    如何在MAC上安装RocketMQ实现消息发送? 近段时间因为学习RocketMQ的消息发送相关机制,需要在MAC上搭建RocketMQ开发环境,期间遇到了较多的问题,此篇文章用于记录整个搭建过程,及 ...

  9. 如何在MAC上安装并运行Web漏洞扫描器Arachni

    如何在MAC上安装并运行Web漏洞扫描器Arachni 如何在MAC上安装并运行Web漏洞扫描器Arachni1如何在MAC上安装并运行Web漏洞扫描器Arachni2如何在MAC上安装并运行Web漏 ...

最新文章

  1. CBV 验证装饰器的使用
  2. ubuntu python设置utf-8
  3. java websocket 客户端
  4. 制作github博客
  5. servlet 调用oracle数据库存储过程
  6. 关于maven导入工程pom文件报错问题及解决
  7. 登录界面转换实现html,html5和css3登录注册表单界面切换动画
  8. Dell R730 服务器重装系统Ubuntu16.04
  9. 站点的安全防范都是后端的职责?非也,Web前端安全同样不可忽视
  10. Dennis Ritchie, father of Unix and C, dies
  11. 第二单元 用python学习微积分(十六)定积分
  12. 群晖6.1安装php3.6_教程分享 --- jun大神 VMWare虚拟机安装黑群晖 (DSM6.1)
  13. linux 查看pgsql端口,如何查看postgres数据库端口
  14. golang源代码阅读,sync系列-WaitGroup
  15. 两个路由器配置静态路由只能单边 ping 通
  16. 树莓派基础实验24:超声波测距传感器实验
  17. 太爽了!记录下我磕磕碰碰的三个月找工作经历
  18. 计算机网络期末复习提纲,湖南科技大学《计算机网络微课堂》课题笔记
  19. 一个基于Web服务器的PoW区块链案例
  20. 查看CPU物理核数和逻辑核数

热门文章

  1. vue中computed与watch的区别
  2. 手机访问电脑文件_手机直接访问电脑文件,不用数据线,方便快速
  3. 成功解决pycharm导入第三方库出现ReadTimeoutError超时的问题
  4. Available Packages更换国内源后,仍显示为nothing to show
  5. 目标检测——FCOS的学习笔记
  6. GAN——欧几里得空间
  7. C#套接字和windowsAPI套接字
  8. 算法学习四:算法性能分析理论基础——函数增长与渐进分析
  9. IaaS、PaaS、SaaS
  10. volatile关键字和Java线程安全问题