迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Java >

Java Lang Runtime Java 中的 exec() 方法

作者:迹忆客 最近更新:2023/08/07 浏览次数:

本文介绍了 Java 的 Runtime.exec() 方法。


Java Lang Runtime Java 中的 exec() 方法

Java Lang Runtime 类用于每个 Java 应用程序与类运行时实例和环境接口之间的交互。 Runtime.getRuntime.exec() 方法用于在进程中执行字符串命令。

Runtime.exec()方法可以通过以下方式实现:

方法 动作
exec(String cmd) 这用于在进程中执行字符串命令。
exec(String[] cmd) 这用于在进程中执行带有参数的特定命令。
exec(String command, String[] envp, File dir) 这用于在具有特定环境和目录的进程中执行单个字符串命令。
exec(String command, String[] envp) 这用于在具有特定环境的进程中执行单个字符串命令。
exec(String[] cmdarray, String[] envp, File dir) 这用于在具有特定环境和目录的进程中执行带参数的字符串命令。
exec(String[] cmdarray, String[] envp) 这用于在具有特定环境的进程中执行带参数的字符串命令。

让我们尝试一个在 Java 中实现 Runtime.exec() 方法的示例:

package jiyik;

import java.util.*;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

// Main class
public class Example {
    // Main driver method
    public static void main(String[] args) throws InterruptedException{
        try {
            // Use Runtime.getRuntime.exec on a separate process
            Process Demo_Process = Runtime.getRuntime().exec("java -version");

            //Get the output in the console

            String Output_Line;
            InputStreamReader Input_Stream_Reader = new InputStreamReader(Demo_Process.getInputStream());
            BufferedReader Buffered_Reader = new BufferedReader(Input_Stream_Reader);
            while((Output_Line = Buffered_Reader.readLine()) != null) {
                System.out.println(Output_Line);
            }

            Input_Stream_Reader = new InputStreamReader(Demo_Process.getErrorStream());
            Buffered_Reader = new BufferedReader(Input_Stream_Reader);
            while((Output_Line = Buffered_Reader.readLine()) != null) {
                System.out.println(Output_Line);
            }
            // Wait for the process to complete
            Demo_Process.waitFor();

        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
}

上面的代码使用 java -version 命令运行 Runtime.getRuntime.exec() 方法,并在控制台中获取输出。 查看输出

java version "17.0.2" 2022-01-18 LTS
Java(TM) SE Runtime Environment (build 17.0.2+8-LTS-86)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.2+8-LTS-86, mixed mode, sharing)

上一篇:控制 java.io.tmpdir 的环境变量

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

控制 java.io.tmpdir 的环境变量

发布时间:2023/08/07 浏览次数:138 分类:Java

本文将介绍名为 java.io.tmpdir 的环境变量,它可用于调节 Java 的临时文件目录。Java虚拟机(JVM)可以生成临时文件并将它们存储在java.io.tmpdir系统参数指定的目录中。

Java 中的 Zulu

发布时间:2023/08/07 浏览次数:57 分类:Java

Zulu 是 Java 11 的一部分。它受到广泛的操作系统和硬件平台的支持。如何在 Java 中安装 Zulu 首先,从 Azul 的官方下载页面下载必要的 ZIP 或 TAR.GZ。

在 Java 中使用 Mockito 模拟静态方法

发布时间:2023/08/07 浏览次数:180 分类:Java

本文介绍了如何使用mockito来模拟Java中的静态方法。Java 中的模拟静态方法 在 Java 中执行单元测试时需要模拟静态方法。

JVM -XSS 选项

发布时间:2023/08/07 浏览次数:141 分类:Java

-Xss 标志主要用于更改 JVM 堆栈的大小。 让我们看一下下面的命令,通过这些命令我们可以更改 JVM 堆栈的大小。使用 -Xss 更改 JVM 堆栈的大小

Java Goto

发布时间:2023/08/07 浏览次数:72 分类:Java

与其他编程语言不同,Java 没有 goto。 相反,Java 包含关键字 label。关键字 label 的作用是改变程序的流程,根据指定的条件跳转到程序的另一段。

Java - 在方法参数中使用 Nullable 注注解

发布时间:2023/08/07 浏览次数:181 分类:Java

本文简要讨论 @Nullable 注解,并通过代码示例演示其在方法参数中的使用。@Nullable 注解及其在方法参数中的使用 @Nullable 注释允许您创建可以返回 null 值的方法调用。

Java - 在方法参数中使用 NotNull 注解

发布时间:2023/08/07 浏览次数:148 分类:Java

本文将讨论 @NotNull 注解,并使用代码示例来演示我们如何在 Java 中工作时在方法参数中使用它。@NotNull 注解概述 如果你想设置变量或方法不返回任何空值,那么你可以使用 @NotNull 注解。

Java 中的泛型接口

发布时间:2023/08/07 浏览次数:61 分类:Java

本文将讨论泛型接口以及如何使用它。 我们将使用示例和解释来讨论该主题,以使该主题更容易。Java 中的泛型接口

Java 中的省略号

发布时间:2023/08/07 浏览次数:61 分类:Java

省略号是新程序员需要学习的一种不常见的 Java 语法。 即使一些经验丰富的程序员也没有太多经验。在本文中,我们将讨论省略号或...的使用。此外,我们将通过使用必要的示例和解释来描述

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便