如何获取生成的 java 进程的 PID

2023-11-30

我正在编写几个 java 程序,在完成我想做的任何事情后,需要在单独的 JVM 中杀死/清理。为此,我需要获取我正在创建的 java 进程的 PID。


jps -l可在 Windows 和 Unix 上运行。您可以使用 java 程序调用此命令Runtime.getRuntime().exec。样本输出jps -l如下

9412 foo.bar.ClassName
9300 sun.tools.jps.Jps

您可能需要解析它,然后检查完​​全限定名称,然后从相应的行获取 pid。

private static void executeJps() throws IOException {
    Process p = Runtime.getRuntime().exec("jps -l");
    String line = null;
    BufferedReader in = new BufferedReader(new InputStreamReader(
                                                p.getInputStream(), "UTF-8"));

    while ((line = in.readLine()) != null) {
        String [] javaProcess = line.split(" ");
        if (javaProcess.length > 1 && javaProcess[1].endsWith("ClassName")) {
            System.out.println("pid => " + javaProcess[0]);
            System.out.println("Fully Qualified Class Name => " + 
                                           javaProcess[1]);
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取生成的 java 进程的 PID 的相关文章

  • 如何使用 Java 中的 Web 服务(例如 Axis2)发送复杂对象的数组或集合?

    我对 SOAP Web 服务还比较陌生 虽然我完成了一些较小的 Web 服务项目 但我偶然从来不需要返回 或用作参数 复杂 对象的数组或集合 当我尝试这样做时 根据我的 SOAP 绑定风格 我会得到不同的奇怪行为 当我使用RPC 文字 我可
  • 是什么决定了从 lambda 创建哪个函数式接口?

    请考虑这个例子 import java util function Consumer public class Example public static void main String args Example example new
  • Java:迭代 Collection 的最佳方法(此处为 ArrayList)

    今天 当我看到一段我已经使用了数百次的代码时 我很高兴地开始编码 迭代集合 此处为 ArrayList 出于某种原因 我实际上查看了 Eclipse 的自动完成选项 这让我想知道 在什么情况下以下循环比其他循环更好使用 经典的数组索引循环
  • Java:如何从转义的 URL 获取文件?

    我收到了一个定位本地文件的 URL 事实上我收到的 URL 不在我的控制范围内 URL 按照 RFC2396 中的定义进行有效转义 如何将其转换为 Java File 对象 有趣的是 URL getFile 方法返回一个字符串 而不是文件
  • Android在排序列表时忽略大小写

    我有一个名为路径的列表 我目前正在使用以下代码对字符串进行排序 java util Collections sort path 这工作正常 它对我的 列表进行排序 但是它以不同的方式处理第一个字母的情况 即它用大写字母对列表进行排序 然后用
  • 运行具有外部依赖项的 Scala 脚本

    我在 Users joe scala lib 下有以下 jar commons codec 1 4 jar httpclient 4 1 1 jar httpcore 4 1 jar commons logging 1 1 1 jar ht
  • 如何在不超过最大值的情况下增加变量?

    我正在为学校开发一个简单的视频游戏程序 我创建了一个方法 如果调用该方法 玩家将获得 15 点生命值 我必须将生命值保持在最大值 100 并且由于我目前的编程能力有限 我正在做这样的事情 public void getHealed if h
  • 在 S3 中迭代对象时出现“ConnectionPoolTimeoutException”

    我已经使用 aws java API 一段时间了 没有遇到太多问题 目前我使用的是库 1 5 2 版本 当我使用以下代码迭代文件夹内的对象时 AmazonS3 s3 new AmazonS3Client new PropertiesCred
  • Hazelcast 分布式锁与 iMap

    我们目前使用 Hazelcast 3 1 5 我有一个简单的分布式锁定机制 应该可以跨多个 JVM 节点提供线程安全性 代码非常简单 private static HazelcastInstance hInst getHazelcastIn
  • hibernate锁等待超时超时;

    我正在使用 Hibernate 尝试模拟对数据库中同一行的 2 个并发更新 编辑 我将 em1 getTransaction commit 移至 em1 flush 之后我没有收到任何 StaleObjectException 两个事务已成
  • Java 8 流 - 合并共享相同 ID 的对象集合

    我有一系列发票 class Invoice int month BigDecimal amount 我想合并这些发票 这样我每个月都会收到一张发票 金额是本月发票金额的总和 例如 invoice 1 month 1 amount 1000
  • 很好地处理数据库约束错误

    再一次 它应该很简单 我的任务是在我们的应用程序的域对象中放置一个具有唯一约束的特定字段 这本身并不是一个很大的挑战 我刚刚做了以下事情 public class Location more fields Column unique tru
  • 在游戏视图下添加 admob

    我一直试图将 admob 放在我的游戏视图下 这是我的代码 public class HoodStarGame extends AndroidApplication Override public void onCreate Bundle
  • IntelliJ - 调试模式 - 在程序内存中搜索文本

    我正在与无证的第三方库合作 我知道有一定的String存储在库深处的某个字段中的某处 我可以预测的动态值 但我想从库的 API 中获取它 有没有一种方法可以通过以下方式进行搜索 类似于全文搜索 full程序内存处于调试模式并在某个断点处停止
  • java.lang.NumberFormatException: Invalid int: "3546504756",这个错误是什么意思?

    我正在创建一个 Android 应用程序 并且正在从文本文件中读取一些坐标 我在用着Integer parseInt xCoordinateStringFromFile 将 X 坐标转换为整数 Y 坐标的转换方法相同 当我运行该应用程序时
  • 测试弱引用

    在 Java 中测试弱引用的正确方法是什么 我最初的想法是执行以下操作 public class WeakReferenceTest public class Target private String value public Targe
  • 替换后增量

    我自己已经有一个问题了 但我想扩展它后增量示例 https stackoverflow com questions 51308967 post increment with example char a D int b 5 System o
  • javafx android 中的文本字段和组合框问题

    我在简单的 javafx android 应用程序中遇到问题 问题是我使用 gradle javafxmobile plugin 在 netbeans ide 中构建了非常简单的应用程序 其中包含一些文本字段和组合框 我在 android
  • 在 RESTful Web 服务中实现注销

    我正在开发一个需要注销服务的移动应用程序 登录服务是通过数据库验证来完成的 现在我陷入了注销状态 退一步 您没有提供有关如何在应用程序中执行身份验证的详细信息 并且很难猜测您在做什么 但是 需要注意的是 在 REST 应用程序中 不能有会话
  • 带有 Maven Wrapper 的 Java 17 导致无法识别的 VM 选项“MaxPermSize=512m”

    I use OpenJDK 17 https jdk java net 17 使用 Maven Wrapper 3 8 2 从春季初始化 https start spring io Maven项目 JAR打包 Java 17 Spring

随机推荐

  • 安装 SQL Server 2014 Express 作为引导程序的先决条件

    我正在尝试使用 boostrapper Wix 3 11 来设置安装 并以 SQL Server 2014 Express 作为先决条件 我安装的时候效果很好setup exe or SQLEXPR x64 ENU exe用命令行 命令行如
  • 闪亮 - 如何禁用仪表板标题

    我是闪亮的新手 当我制作项目时 我需要在服务器端隐藏仪表板标题 在shinydashboard网站上 我找到了代码dashboardHeader disable TRUE 我尝试过这个 但没有用 不过 我尝试使用shinyjs来解决这个问题
  • C# MediaPlayer.MediaEnded 事件未触发

    我有一小段 C 代码 Creates a MediaPlayer with the sound you want to play public static void PlaySound Stream wavStream string wa
  • 查找 id 以公共字符串开头的所有元素

    我有一个 XSL 它创建了多个 id 为 createdOn 的元素加上 unique id Example createdOnid0xfff5db30 我想使用 JavaScript 查找这些内容并将其存储在变量中 我试过了 var da
  • 有没有办法在不创建类实例的情况下获取类实例属性?

    这是我的第一个问题的链接 从字典创建类实例 所以我试图从字典创建类实例 该实例包含类没有的键 例如 class MyClass object def init self value1 value2 self attr1 value1 sel
  • excel:比较日期的vba类型不匹配

    我试图对两个日期 在不同列中 的年份和当前年份日期进行比较 如果年份相同 则应在相应行的第 13 列写入单词 ATUAL 如果年份不同 则不应写入任何内容 这是我到目前为止所尝试过的 Sub CopyColumn2 Dim i As Lon
  • dexguard 的实现

    我已将 com saikoa dexguard eclipse adt jar 文件放入 eclipse 的 dropin 文件夹中 并修改了 android 项目中的 Proguard Project 和 Project Properti
  • docker extra_host 参数需要主机名的字典值,如何使用变量?

    在 ansible playbook 中 docker 参数 extra host 包含两部分 主机 ip address 我试图将主机和 IP 地址作为变量传递 它们来自提示变量 我的主机文件中的最终结果是 1 2 3 4 server
  • 解析数据库授权 - 用户对象的安全性

    我有一个 ASP NET MVC 4 Web 应用程序 我在后端使用 Parse 作为数据库 https www parse com 和 C 作为编程语言 我使用 ParseUser 类来登录注册用户 https www parse com
  • 逆透视 Excel 矩阵/数据透视表?

    有没有一种快速的方法来 取消透视 Excel 矩阵 数据透视表 在 Excel 或其他地方 无需编写宏或其他代码 同样 我可以自己编写代码 C 或 VBA 或其他 来执行此操作 我想知道是否可以做到without代码 快点 例如 我需要转换
  • fopen 用于写入但不独占

    我想用fopen file w 打开文件进行写入但不独占 IE 我想让另一个进程在文件仍然打开时读取该文件 请注意 我在每行之后都会进行同花 这样我就不会错过任何内容 当其他进程从文件读取时 写入将处于空闲状态 该文档没有提到排他性 但实验
  • 检测到 CallbackOnCollectedDelegate

    当我的代码运行 5 10 分钟后 我不断收到此错误 检测到 CallbackOnCollectedDelegate 消息 对 CashRecyclerTestapp MessageMonitor NativeMethods WndProc
  • 尝试对自定义 JavaScript 对象进行排序

    我不太擅长 JS 但到目前为止还幸存下来 我正在创建一个复杂的 JS 对象并想要对其进行排序 该对象的结构如下所示 cart attributes Attribute Value 我正在创建一个独特的属性 它告诉我由冒号任意分隔的 3 件事
  • Ubuntu Python“没有名为 paramiko 的模块”

    所以我尝试在 Ubuntu 上使用 Python 2 7 使用 Paramiko 但是 import paramiko 会导致此错误 Traceback most recent call last File
  • 在excel vba中使用数组或字典作为sql中的from子句

    是否可以使用数组或字典作为 SQL 语句中的表 例如 strSQL SELECT FROM myArray 提前致谢 扩展 Nathan Sav 提供的想法 以下代码应该 Dim a 3 As String a 0 1 as C1 a 1
  • 在 Git 中仅提交文件的部分更改

    当我在 Git 中更改文件时 如何才能仅提交部分更改 例如 如何仅提交文件中已更改的 30 行中的 15 行 您可以使用 git add patch
  • Scala:用最后一个非空值填充列表中的空白

    我有一个类似的列表 val arr Array a b c 我正在寻找一种方法来创建 Array a a a b c c 您可以尝试使用折叠 简单 易于理解 的方法是向左折叠 Array empty String arr case prev
  • 如何打开 Excel 工作簿而不显示消息 该工作簿包含指向其他数据源的链接。以编程方式?

    我想以编程方式打开 1 个或多个 Excel 工作簿 当我打开工作簿时 你会得到一个问题 该工作簿包含其他数据源的链接 我不想按 不更新 您如何离开此消息框 所以功能不会再中断 不需要更新 尝试放入工作簿打开事件处理程序 Applicati
  • InternalsVisibleTo 的替代方案

    我目前正在尝试在我的解决方案中编写单元测试 但我想将单元测试放在不同的单独项目中 问题是当我生成一些假测试数据时 我需要设置类的属性 但这是不可能的 因为属性具有私有 内部设置 我找到了一种使用属性仅向某些项目公开内部属性的方法Intern
  • 如何获取生成的 java 进程的 PID

    我正在编写几个 java 程序 在完成我想做的任何事情后 需要在单独的 JVM 中杀死 清理 为此 我需要获取我正在创建的 java 进程的 PID jps l可在 Windows 和 Unix 上运行 您可以使用 java 程序调用此命令