Sublime Text 3配置 Java 开发环境

《开发工具系列》 《开发语言-Java》

在这里插入图片描述

Sublime Text 3配置 Java 开发环境

  • 一、引言
  • 二、主要内容
    • 1. 初识 Sublime Text 3
    • 2. 初识 Java
    • 3. 接入 Java
      • 3.1 JDK 下载
      • 3.2 安装和使用 java
      • 3.3 环境变量配置
    • 4. 配置 Java 开发环境
    • 5. 编写 Java 代码
    • 6. 编译和运行 Java 代码
    • 7. 乱码问题
  • 三、总结

一、引言

Java 是一种跨平台、面向对象、功能强大且安全可靠的编程语言。它有很多常用的开发工具,比如 EclipseIDEA 等等,相信大家多多少少都有所涉猎;而本篇 Huazie 将要介绍一个比较轻量级的开发工具 Sublime Text 3,并用它来配置 Java 开发环境。

二、主要内容

1. 初识 Sublime Text 3

Sublime Text 3 是一款流行的文本编辑器,它的特点是体积小巧、启动速度快、界面简洁美观。它具有强大的代码编辑功能,支持多种编程语言。此外,Sublime Text 3 还具有丰富的插件生态系统,用户可以根据自己的需求安装各种插件来扩展其功能。

Sublime Text 3 的一些主要特点,如下所示:

  • 强大的代码编辑功能Sublime Text 3 提供了许多实用的代码编辑功能,如自动完成、代码高亮、代码片段等,大大提高了编程效率。

  • 支持多种编程语言Sublime Text 3 支持多种编程语言,包括 HTML、CSS、JavaScript、Python、Ruby、PHP 等,用户可以根据需要选择不同的语言模式。

  • 插件生态系统Sublime Text 3 拥有丰富的插件生态系统,用户可以通过安装插件来扩展其功能,如 Emmet(用于编写 HTMLCSS)、Package Control(用于安装和管理插件)等。

  • 自定义快捷键Sublime Text 3 允许用户自定义快捷键,以便更快速地执行常用操作。

  • 多窗口编辑Sublime Text 3 支持多窗口编辑,用户可以同时打开多个文件进行编辑,方便进行代码对比和复制粘贴操作。

  • 跨平台支持Sublime Text 3 支持 WindowsMacLinux 操作系统,用户可以在不同的平台上使用相同的设置和插件。

  • 版本控制集成Sublime Text 3 可以与版本控制系统(如 Git)集成,方便用户进行代码版本管理。

2. 初识 Java

Java 是一种面向对象的编程语言,它诞生于 1995 年,由Sun Microsystems 公司(现已被甲骨文公司收购)开发,最初是用于智能家电平台上运行的 OAK 语言,后来发展成为一种功能强大的编程语言。

Java 语言的设计初衷是 “一次编写,到处运行”,即源代码只需编写一次,就可以在任何支持 Java 的平台上运行。

Java 语言拥有丰富的API库和工具,广泛应用于 Web 开发、移动应用开发、游戏开发、大数据和云计算等领域。

3. 接入 Java

在开始接入 Java 之前,还有个概念需要明确一下,那就是 JDK(全称是 Java Development Kit),即 Java 开发工具包

它是用于开发 Java 程序的一套工具和库,其中包含了如下的内容:

  • Java编译器(javac):通过 javac 命令,将 Java 源代码(.java 文件)编译成字节码文件(.class 文件)。
  • Java虚拟机(JVM):通过 java 命令,启动 JVM,并加载执行 Java 字节码文件。从 JDK1.8 开始,可以直接使用 java 主类名.java 运行 Java 文件【其中包含了编译源代码、执行字节码等步骤】。
  • Java基础类库(Java API):包括 java.util、java.io、java.net 等常用类库,用于支持各种常见的编程任务。
  • 其他工具和实用程序:如 Java调试器(jdb)Java反编译器(javap)Java文档生成器(javadoc) 等。

3.1 JDK 下载

JDK 官网下载,目前最新版为 JDK21

大家可以按照自己系统,选择相应的版本进行下载:

在这里插入图片描述

Windows 为例:

  • x64 Compressed Archive : JDK的免安装版本
  • x64 Installer :JDK的离线安装版本
  • x64 MSI Installer :JDK的离线安装版本

3.2 安装和使用 java

Windows 为例:

  • 如果是免安装版本,只需要解压之后,将对应的文件复制到指定的文件夹,比如 C:\java

  • 如果是安装版本,那就下载之后,双击安装,同样选择一个指定的文件夹进行安装即可。

HuazieWindows 系统上就安装了多个 JDK 版本,大家按照自身需要,自行选择安装和使用。

在这里插入图片描述

3.3 环境变量配置

现在,Huaziewindows 11 系统为例,介绍下配置环境变量,如下:

右击 Window 图标,打开下图并选择 系统

在这里插入图片描述

点击 高级系统设置,打开系统属性页面,点击 环境变量

在这里插入图片描述

新增 JAVA_HOME 的环境变量【如果要更换当前的 JDK 版本,修改这里即可】:

在这里插入图片描述

新增 CLASSPATH 的环境变量【用于告诉 JVM 在哪些目录下查找类文件】:

在这里插入图片描述

  • 当前目录(.):表示在当前目录下查找类文件。
  • Java类库路径:包括Java运行环境提供的类库(如rt.jar、tools.jar等)和第三方类库。这些类库文件通常以.jar或.zip格式存在,并需要指定它们所在的目录路径。
  • 自定义类文件路径:如果开发者编写了自己的 Java 类文件,也可以将这些类文件所在的目录路径也加入到 CLASSPATH 中。

找到 Path 环境变量,配置上面你的 Java 安装目录的 lib 目录进去:

在这里插入图片描述

如果上面是 JDK 离线安装版,Path 里面可能存在如下环境变量,则需要手动删除,以免影响上面的环境变量配置。

在这里插入图片描述

然后 Win + R,打开如下窗口,输入 cmd,点击确认打开命令行窗口。

在这里插入图片描述

在命令行窗口内,输入 java -version 查看,如下图所示即为安装成功:

在这里插入图片描述

4. 配置 Java 开发环境

初次打开 Sublime Text 3,我们可以看到如下的界面:

在这里插入图片描述

在菜单栏选择 Tools => Build System => New Build System,打开如下页面

在这里插入图片描述

{"cmd": ["javac",  "$file_name"], "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$", "working_dir": "${file_path}","selector": "source.java","variants": [{"name": "Run","shell": true,"windows": {"shell_cmd" : "start cmd /c \"java ${file_base_name} & echo. & pause\""}},{"name": "Build and Run","shell": true,"windows": {"shell_cmd": "javac \"${file_name}\" && start cmd /c \"java ${file_base_name} & echo. & pause\""}}]
}

将上述内容保存在,前面打开的 New Build System 中,并命名为 Java8.sublime-build【这里命名可以按自己的 JDK 版本来】。

5. 编写 Java 代码

现在让我们开始编写第一个 Java 代码吧!

public class HelloWorld {public static void main(String[] args) {String name = "Huazie";System.out.println("Hello World!");System.out.println("Author:" + name);}
}

针对上述 java 代码,我们会新建一个 HelloWorld.java 文件进行保存。

注意: java 源码文件名的后缀为 java,且文件名必须和类名保持一致。

6. 编译和运行 Java 代码

上述 HelloWorld.java 我们也可以打开命令行窗口进行编译运行,如下图:

在这里插入图片描述

当然,对于初学者,使用这种方式理解 Java 的编译和运行过程,还是可以的。

不过既然我们已经使用了 Sublime Text 3 的开发环境了,那就在菜单栏 Tools => Build System ,然后 选择 Java8,就是前面的 Java8.sublime-build

然后直接按住 Ctrl + Shift + B,会弹出如下界面:

在这里插入图片描述
选择 Java8,我们可以直接编译当前 HelloWorld.java 源码文件,并在当前目录生成对应的字节码文件,如下图:

在这里插入图片描述

接着,还是按住 Ctrl + Shift + B,选择 Java8 - Run,就可以在 CMD 窗口中运行我们上面编译好的 Java 字节码文件,并输出相关内容。

如下图所示:

在这里插入图片描述

当前上面还是需要两次操作,我们把两次整合一下,还是按住 Ctrl + Shift + B,选择 Java8 - Build And Run,这一次就可以直接编译和运行一起【这一步为了看到效果,先将之前生成的字节码文件删掉,然后再操作即可】。

通过上面操作之后,我们就可以直接使用 Ctrl + B【这里复用上一次 Ctrl + Shift + B 选择的 Java8 - Build And Run】,这样就可以直接编译和运行我们的 Java 代码。

注意: 这里的编译执行不适合有包的情况,涉及到比较复杂的逻辑,还是采用 EclipseIDEA 这些专门的开发工具较为适合。

7. 乱码问题

经过上面的配置,相信大家都能编译和运行第一个 Java 代码了,但是有些小伙伴慢慢使用发现,如果输出的内容包含中文,打印出来的信息是乱码的。有关这个问题,请查看笔者的另一篇博文 《Sublime Text 3 解决中文乱码问题》

三、总结

本篇 Huazie 介绍了 Sublime Text 3 配置 Java 开发环境的相关内容,感兴趣的朋友赶紧配置起来,有任何问题可以随时评论区沟通。

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

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

相关文章

服务器无法访问外网怎么办

目前是互联网时代,网络已经成为人们日常生活中不可或缺的一部分。我们通过网络获取信息、进行沟通、甚至进行工作,因此,保持网络的稳定和通畅是非常重要的。然而,有时候我们可能会遇到一些网络无法访问外网的问题,这给…

作者推荐 | 【深入浅出MySQL】「底层原理」探秘缓冲池的核心奥秘,揭示终极洞察

探秘缓冲池的核心奥秘,揭示终极洞察 缓存池BufferPool机制MySQL缓冲池缓冲池缓冲池的问题 缓冲池的原理数据预读程序的局部性原则(集中读写原理)时间局部性空间局部性 innodb的数据页查询InnoDB的数据页InnoDB缓冲池缓存数据页InnoDB缓存数据…

[DIOR | DIOR-R]旋转目标检测数据集——基于YOLOv8obb,map50已达81.8%

DIOR是一个用于光学遥感图像目标检测的大规模基准数据集。涵盖20个对象类。这20个对象类是飞机、机场、棒球场、篮球场、桥梁、烟囱、水坝、高速公路服务区、高速公路收费站、港口、高尔夫球场、地面田径场、天桥、船舶、体育场、储罐、网球场、火车站、车辆和风磨。 1. DIOR简…

常见の算法链表问题

时间复杂度 1.链表逆序 package class04;import java.util.ArrayList; import java.util.List;public class Code01_ReverseList {public static class Node {public int value;public Node next;public Node(int data) {value data;}}public static class DoubleNode {publi…

Java 字符串 05 练习-遍历字符串和统计字符个数

代码: import java.util.Scanner; public class practice{public static void main(String[] args) {//键盘录入一个字符串,并进行遍历;Scanner input new Scanner(System.in);System.out.println("输入一个字符串:")…

webassembly003 whisper.cpp的main项目-1

参数设置 /home/pdd/le/whisper.cpp-1.5.0/cmake-build-debug/bin/main options:-h, --help [default] show this help message and exit-t N, --threads N [4 ] number of threads to use during computation-p N, --processors …

Android App开发-简单控件(2)——视图基础

2.2 视图基础 本节介绍视图的几种基本概念及其用法,包括如何设置视图的宽度和高度,如何设置视图的外部间距和内部间距,如何设置视图的外部对齐方式和内部对齐方式等等。 2.2.1 设置视图的宽高 手机屏幕是块长方形区域,较短的那…

【星海随笔】unix 启动问题记录.

启动Ubuntu操作系统时,直接进入GRUB状态。 调试时候,曾显示 no bootable device no known filesystem detected 注意: 目前 GRUB 分成 GRUB legacy 和 GRUB 2。版本号是 0.9x 以及之前的版本都称为 GRUB Legacy ,从 1.x 开始的就称…

NODE笔记 2 使用node操作飞书多维表格

前面简单介绍了node与简单的应用,本文通过结合飞书官方文档 使用node对飞书多维表格进行简单的操作(获取token 查询多维表格recordid,删除多行数据,新增数据) 文章目录 前言 前两篇文章对node做了简单的介绍&#xff…

eNSP学习——配置通过STelnet登陆系统

目录 背景 实验内容 实验目的 实验步骤 实验拓扑 详细配置过程 基础配置 配置SSH server 配置SSH client 配置SFTP server 与client 背景 由于Telnet缺少安全的认证方式,而且传输过程采用的是TCP进行明文传输。单纯的提供Telnet服务容易招致主机IP地址欺骗、路…

数据分析 - 图形化解释(后续添加)

图形化解释 作为数据分析师来说一个好的图形,就是自己的数据表达能力 简单文本 只有一两项数据需要分享的时候,简单的文本是最佳的沟通方法 下图的对比可以看出来文字的表达效果会好很多 散点图 散点图在展示两件事的关系时很有用,观察是否存…

【搞懂设计模式】命令模式:从遥控器到编程的妙用!

我们都熟悉电视遥控器,它有许多按钮,每个按钮都有确定的功能。你按下电源键电视就会打开,再按下一次电视就会关闭。编程世界里也有这种模式,这就是我们说的命令模式。 命令模式是一种设计模式,它把一个请求或操作封装…

以梦为码,CodeArts Snap 缩短我与算法的距离

背景 最近一直在体验华为云的 CodeArts Snap,逐渐掌握了使用方法,代码自动生成的准确程度大大提高了。 自从上次跟着 CodeArts Snap 学习用 Python 编程,逐渐喜欢上了 Python。 我还给 CodeArts Snap 起了一个花名: 最佳智能学…

计算机服务器中了halo勒索病毒怎么办,halo勒索病毒解密处理流程

计算机技术的发展与应用为企业的生产生活提供了坚实基础,但同时也为网络安全威胁制造了有利条件。近期,网络上的勒索病毒非常嚣张,给企业的计算机服务器带来严重威胁。近日,云天数据恢复中心接到山东某制造公司的求助,…

Oracle DG环境下的秘钥管理

今天有朋友问到1)DG环境下的秘钥管理需要注意什么,2)秘钥管理对DG的日志同步有影响吗? 对于2)的回答是明确的,没有影响。秘钥的管理和DG的redo log shipping完全是两套机制。在最新版的Oracle Key Vault常…

Qlik Sense : ErrorCode(错误变量)

错误变量 所有错误变量的值在脚本执行之后依然保留。第一个变量 ErrorMode 由用户输入,最后三个变量是 Qlik Sense 的输出(包括脚本中错误的信息)。 使用每个变量的下拉列表可查看每个变量的简短描述和语法。单击语法描述中的变量名称可了解…

Vulnhub靶机:FunBox10

一、介绍 运行环境:Virtualbox 攻击机:kali(10.0.2.15) 靶机:FunBox10(10.0.2.35) 目标:获取靶机root权限和flag 靶机下载地址:https://download.vulnhub.com/funbo…

Effective C++——关于重载赋值运算

令operator返回一个*this的引用 在重载,,*等运算符时&#xff0c;令其返回一个指向this的引用。 class MyClass {int* val; public:MyClass(int i) : val(new int(i)){}MyClass():val(new int(0)){}void print() {cout << *val << endl;}MyClass& operator(co…

LabVIEW电液比例阀测试系统

电液比例阀与普通阀和伺服阀相比&#xff0c;比例阀展现出显著的耐污染和可靠性特点。为了满足这些比例阀的综合性能测试需求&#xff0c;开发了一种基于LabVIEW软件的电液比例阀综合性能试验台。这个系统不仅能够进行比例压力阀、流量阀和方向阀的性能测试&#xff0c;而且通过…

RabbitMQ 笔记一

概览&#xff1a; MQ基本概念 RabbitMQ入门 基本工作模 1.MQ是什么&#xff1f; MQ:Message Queue, 存储消息的中间件&#xff0c;是消息发送过程中的暂存容器&#xff0c;主要用于解决分布式系统进程间的通信。 分布式系统通信的两种方式&#xff1a;直接远程调用、借助第三…