文档章节

windows下jvm抛出:"Insufficient privileges to attach"

ihaolin
 ihaolin
发布于 2013/12/16 23:12
字数 360
阅读 434
收藏 1

由于应用跑在windows下,并以System用户运行。

本人以Administrator来进行attach操作,结果就可想而知,直接报出:

"Insufficient memory or insufficient privileges to attach"
很明显,System用户比Administrator用户权限高得多,也情有可理,于是通过PsExe工具启动我得程序,来attach目标程序,两者都是System用户运行,结果依然出现上面得错误,于是将attach程序去掉界面来运行,及不要PsExec得-i参数,嗯,结果就可以了,那到底为什么有了界面就不行了呢,还得从异常说起,这个异常是jvm抛出来的,java里看不到,于是去翻openjdk7, 搜遍整个openjdk7源码都没找到这句话,按理会在WindowsVirtualMachine.c这个文件中,结果真心就没有,异常都不知道在哪儿抛出来的,怎么搞?一不小心在网上看到了这么段源码:(都被标记为Old了,没办法只能怀疑Oracle jdk里面还保留着这个)
if (GetLastError() == ERROR_NOT_ENOUGH_MEMORY) {
   // This error will occur when attaching to a process belonging to
   // another terminal session. See "Remarks":
   // http://msdn.microsoft.com/en-us/library/ms682437%28VS.85%29.aspx
   JNU_ThrowIOException(env,
           "Insufficient memory or insufficient privileges to attach");
} else {
   JNU_ThrowIOExceptionWithLastError(env, "CreateRemoteThread failed");
}
喜出往外,终于看到本人了, http://msdn.microsoft.com/en-us/library/ms682437%28VS.85%29.aspx 这儿就一目了然了。

收工吧。

© 著作权归作者所有

共有 人打赏支持
ihaolin
粉丝 257
博文 164
码字总数 106524
作品 4
朝阳
高级程序员
Java类动态加载(二)——动态加载class文件

想要在jvm启动后,动态的加载class类文件,我们首先需要了解Instrumentation、Attach、Agent、VirtualMachine、ClassFileTransformer这几个类的用法和他们之间的关系。 Java的com.sun.tools...

2k10
2015/03/20
0
0
JVM Attach实现原理剖析

前言 本文旨在从理论上分析JVM 在 Linux 环境下 Attach 操作的前因后果,以及 JVM 为此而设计并实现的解决方案,通过本文,我希望能够讲述清楚如下三个主要方面的内容。 原发布:我的博客 一...

从精于一开始
07/21
0
0
在debian7.8安装wcp知识库

原文: http://git.oschina.net/macplus/WCP/wikis/wcp%E7%9F%A5%E8%AF%86%E5%BA%93%E7%B3%BB%E7%BB%9F%E7%9A%84%E5%AE%89%E8%A3%85 1、安装tomcat6 看到html内容,表示tomcat安装成功 2、安......

超爱fitnesse
2015/08/03
0
0
Ubuntu下搭建JAVA运行环境

(一)Linux操作系统安装(详细信息参见:http://my.oschina.net/u/1458864/blog/366665) 1.安装Oracle VM VirtualBox 2.安装vagrant 3.下载box 4.vagrant添加box到虚拟机中(http://my.osch...

飓风2000
2015/01/27
0
2
java远程调试与JVM调优工具

Java远程调试方法: 1、被调试程序当作调试服务器(本地主动连接远程服务器,需要用如下命令让远程服务器jvm开启调试模式)。 -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=8765 ...

chape
2013/12/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

RobotFramework之Process

Process Library version: 3.0.4 Library scope: global Named arguments: supported Introduction Robot Framework test library for running processes. This library utilizes Python's s......

海盐宝宝
2分钟前
0
0
easyui的textbox赋值问题,不能用$('#text').val('text');赋值

下面来看看easyui的各种验证框赋值的方式: <input name="text" id="text" class="easyui-numberbox" > <input name="text" id="text" class="easyui-textbox" > <input name="text" id="tex......

无小农
5分钟前
0
0
弹性工作制的魔咒

简评:你找到了一份完美的工作 —— 可以提前离开公司,还可以在晚上从家里回复邮件。既然如此,你为什么还会有那么强的负罪感呢? 或许是弹性工作制魔咒在作祟。 很多享受弹性工作制的人会始...

极光推送
12分钟前
0
0
KAFKA介绍(分布式架构)

Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能,但具有自己独特的设计。这个独特的设计是什么样的呢? 首先让我们看几个基本的消息系统术语: Kafka将消息以...

明理萝
18分钟前
0
1
os::NodeHandle::subscribe回调函数绑定对象

void Foo::callback(const std_msgs::Empty::ConstPtr& message){}Foo foo_object;ros::Subscriber sub = handle.subscribe("my_topic", 1, &Foo::callback, &foo_object); 参考: ht......

itfanr
19分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部