在Linux命令行中运行Java程序的完整指南

03-18 2179阅读

在Linux命令行中运行Java程序的完整指南

在Linux操作系统中,命令行是一个强大且灵活的工具,能够帮助开发者高效地完成各种任务,对于Java开发者来说,掌握如何在Linux命令行中运行Java程序是一项必备技能,本文将详细介绍如何在Linux命令行中编译和运行Java程序,并探讨一些常见的技巧和注意事项。

安装Java开发工具包(JDK)

在Linux命令行中运行Java程序之前,首先需要确保系统中已经安装了Java开发工具包(JDK),JDK包含了Java编译器(javac)和Java运行时环境(java),它们是编译和运行Java程序的基础。

在Linux命令行中运行Java程序的完整指南 第1张在Linux命令行中运行Java程序的完整指南" />
(图片来源网络,侵删)

检查Java是否已安装

在终端中输入以下命令,检查系统中是否已经安装了Java:

java -version

如果系统中已经安装了Java,终端会显示Java的版本信息,如果没有安装,终端会提示“command not found”或类似的错误信息。

安装JDK

如果系统中没有安装Java,可以通过以下步骤安装JDK,以Ubuntu为例,可以使用以下命令安装OpenJDK:

sudo apt update
sudo apt install openjdk-11-jdk

安装完成后,再次运行java -version命令,确认Java已成功安装。

在Linux命令行中运行Java程序的完整指南 第2张在Linux命令行中运行Java程序的完整指南" />
(图片来源网络,侵删)

编写Java程序

在Linux命令行中运行Java程序的第一步是编写Java源代码,可以使用任何文本编辑器来编写Java代码,例如nanovimgedit

创建Java源文件

在终端中使用以下命令创建一个Java源文件:

nano HelloWorld.java

在编辑器中输入以下Java代码:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

保存并退出编辑器。

在Linux命令行中运行Java程序的完整指南 第3张在Linux命令行中运行Java程序的完整指南" />
(图片来源网络,侵删)

编译Java程序

编写完Java源代码后,需要使用javac命令将其编译为字节码文件(.class文件)。

使用javac编译Java程序

在终端中运行以下命令,编译HelloWorld.java文件:

javac HelloWorld.java

如果编译成功,终端中不会显示任何输出,但会在当前目录下生成一个名为HelloWorld.class的文件。

处理编译错误

如果Java代码中存在语法错误,javac命令会输出错误信息,如果忘记在System.out.println语句后添加分号,终端会显示如下错误:

HelloWorld.java:3: error: ';' expected
        System.out.println("Hello, World!")
                                              ^
1 error

根据错误信息修改代码后,重新运行javac命令进行编译。

运行Java程序

编译成功后,可以使用java命令运行Java程序。

使用java运行Java程序

在终端中运行以下命令,运行HelloWorld类:

java HelloWorld

如果一切正常,终端会输出:

Hello, World!

处理运行时错误

如果Java程序在运行时出现错误,java命令会输出错误信息,如果尝试运行一个不存在的类,终端会显示如下错误:

Error: Could not find or load main class NonExistentClass

确保类名拼写正确,并且类文件存在于当前目录中。

使用命令行参数

Java程序可以通过命令行参数接收输入,在main方法的String[] args参数中,可以访问这些参数。

修改Java程序以接收命令行参数

修改HelloWorld.java文件,使其能够接收并打印命令行参数:

public class HelloWorld {
    public static void main(String[] args) {
        for (String arg : args) {
            System.out.println("Argument: " + arg);
        }
    }
}

重新编译并运行程序,传递一些命令行参数:

javac HelloWorld.java
java HelloWorld arg1 arg2 arg3

终端会输出:

Argument: arg1
Argument: arg2
Argument: arg3

使用类路径(Classpath)

当Java程序依赖于其他类或库时,需要使用-classpath(或-cp)选项指定类路径。

创建依赖类

创建一个新的Java类Greeting.java

public class Greeting {
    public static void sayHello() {
        System.out.println("Hello from Greeting class!");
    }
}

编译Greeting.java

javac Greeting.java

修改主程序以使用依赖类

修改HelloWorld.java,使其调用Greeting类中的方法:

public class HelloWorld {
    public static void main(String[] args) {
        Greeting.sayHello();
    }
}

编译并运行程序,指定类路径:

javac -cp . HelloWorld.java
java -cp . HelloWorld

终端会输出:

Hello from Greeting class!

使用JAR文件

当Java程序包含多个类时,可以将它们打包成一个JAR文件,方便分发和运行。

创建JAR文件

使用以下命令将HelloWorld.classGreeting.class打包成一个JAR文件:

jar cf HelloWorld.jar HelloWorld.class Greeting.class

运行JAR文件

使用以下命令运行JAR文件中的主类:

java -cp HelloWorld.jar HelloWorld

终端会输出:

Hello from Greeting class!

在Linux命令行中运行Java程序是Java开发中的一项基本技能,通过本文的介绍,您应该已经掌握了如何在Linux系统中安装JDK、编写和编译Java程序、运行Java程序、处理命令行参数、使用类路径以及打包和运行JAR文件,这些技能将帮助您更高效地在Linux环境中进行Java开发。

无论是简单的“Hello, World!”程序,还是复杂的多模块项目,Linux命令行都能为您提供强大的支持,希望本文能为您在Linux命令行中运行Java程序提供有价值的参考。


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]