标签: jstack

Gradle 构建停留在“等待获取守护进程地址注册表的共享锁”。

我目前正在使用 HP Fortify 工具扫描项目中的安全漏洞。在扫描 Fortify 的 CLI 时,允许构建工具集成到其 CLI 命令中,以便构建并同时扫描项目中存在的文件。我正在使用以下命令:

sourceanalyzer -b mcapbookvalue -gradle -verbose ./gradlew -x test --console=verbose -debug --continue assemble

但构建陷入困境:

2020-01-14T12:31:39.836-0500 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.[0K
2020-01-14T12:31:39.836-0500 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
2020-01-14T12:31:39.836-0500 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Waiting to acquire shared lock on daemon addresses registry.
2020-01-14T12:31:39.836-0500 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Lock acquired on daemon addresses registry.
2020-01-14T12:31:39.836-0500 [DEBUG] [org.gradle.cache.internal.DefaultFileLockManager] Releasing lock on daemon addresses registry.
Run Code Online (Sandbox Code Playgroud)

如果我在不使用 Fortify 的集成命令的情况下构建项目,则构建成功,仅使用:

./gradlew -x test --console=verbose -debug --continue …

java build jstack gradle fortify

13
推荐指数
1
解决办法
2773
查看次数

Sun JDK/Open JDK on Cygwin

是否可以在cygwin上安装任何版本的Sun JDK或Open JDK.

我正在寻找这个选项的原因是:有很多工具(例如jStack,jMap)可以在JDK的unix版本中使用,但不能用于windows版本.如果可能的话,我需要在我的Windows机器上使用Cygwin.

java openjdk cygwin jstack

12
推荐指数
1
解决办法
5460
查看次数

在运行的JVM上执行jstack是多么"昂贵"?

我正在考虑制作一个剧本

  1. 每分钟运行一次(或每五分钟运行一次)
  2. 对生产中正在运行的JVM运行jstack
  3. 解析jstack输出并计算我感兴趣的东西
  4. 通过另一台服务器上的集中式Cacti安装导出24/365图表的结果

但我不知道在运行的JVM上有多昂贵或侵入性的jstack.在正在运行的JVM上执行jstack有多贵?我是否为一个受伤的世界做好准备?

java jstack

10
推荐指数
2
解决办法
5048
查看次数

是否有必要以root身份运行jstack -F(在linux上),如果是这样,为什么呢?

是否有必要以root身份运行jstack -F(在linux上),如果是这样,为什么呢?

当尝试jstack -F我自己的进程时,我收到以下错误.

附加到进程的错误:sun.jvm.hotspot.debugger.DebuggerException:无法附加到进程

如果我用sudo运行它,jstack -F工作正常.

java jvm jstack

9
推荐指数
1
解决办法
7851
查看次数

如何使用jstack来查找阻塞线程

使用jstack我得到了一个运行的线程树.

  1. 以下是Thread.State的含义:

    • 等候
    • TIMED_WAITING
    • RUNNABLE
  2. 什么意思是tid和nid?

  3. 线程的标题就像

    "事件批处理(Spring UAA/1.0.2)"守护程序prio = 10 tid = 0x0000000041e27800 nid = 0x363b等待条件[0x00007f9a89267000]

    • 如何导航到"等待条件"-address的源代码行

java jstack

8
推荐指数
1
解决办法
5577
查看次数

Java线程转储prio值与linux上的实际线程优先级不对应?

我打算在我的Java代码中使用线程优先级.应用程序应在我的Linux系统上运行:

>uname -a
Linux <host> 3.0.0-15-generic #26-Ubuntu SMP <date> x86_64 x86_64 x86_64 GNU/Linux

>java -version
java version "1.6.0_23"
OpenJDK Runtime Environment (IcedTea6 1.11pre) (6b23~pre11-0ubuntu1.11.10.1)
OpenJDK 64-Bit Server VM (build 20.0-b11, mixed mode)
Run Code Online (Sandbox Code Playgroud)

在Web上阅读完之后,我现在使用以下命令启动我的测试应用程序:

sudo java -XX:+UseThreadPriorities -XX:ThreadPriorityPolicy=1 -jar ThreadPriorityTest.jar
Run Code Online (Sandbox Code Playgroud)

测试应用程序包含以下两个类:

package ch.mypackage;

public class CountingRunnable implements Runnable{

private long count=0;
private boolean goOn=true;

public long getCount() {
    return count;
}

public void stop(){
    goOn=false;
}

public void run() {
    for(long iteration=0;goOn&&iteration<Long.MAX_VALUE;++iteration){
        ++count;
    }
}

}




package ch.mypackage;

public class PriorizedCountingThreads …
Run Code Online (Sandbox Code Playgroud)

java linux multithreading pthreads jstack

8
推荐指数
1
解决办法
1155
查看次数

如何通过JMX创建线程转储?

我有一个运行作为Windows服务的Tomcat,并且已知这些不能与jstack一起运行.另一方面,jconsole运行良好,我可以看到各个线程的堆栈(我正在连接到"localhost:port"来访问它).

如何使用jconsole或类似工具将所有线程堆栈转储到文件中?(类似于jstack)

java jconsole jstack

7
推荐指数
2
解决办法
2万
查看次数

java jstack工具内存不足或附加权限不足

我真的很困惑:在我的Windows 2008r2中,我有一个Windows服务,实际上它是一个以SYSTEM用户身份运行的java进程.现在,我将Jstack原始用于该服务.但它发生错误:

 insufficient memory or insufficient privilege to attach
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用Jstack的选项-F,它可以很好地工作.我查看了jdk的源代码,它使用了一个BugSpotAgent类来完成上面的操作.

我想知道我无法原始使用Jstack的根本原因,是SYSTEM用户权限问题吗?我也尝试使用PsExec.exe(一个工具)来原始运行我的Jstack(这意味着我将使用SYSTEM用户运行Jstack),但它仍然无法工作.

你能帮助我吗?

感谢和问候!

java memory privilege jstack

7
推荐指数
1
解决办法
7533
查看次数

混合模式下的jstack:WrongTypeException:没有适合的地址类型匹配

我试图在混合模式下在ubuntu上运行jstack:

 $ jstack -m 7219     
Run Code Online (Sandbox Code Playgroud)

结果是这个例外:

Attaching to process ID 7219, please wait...
Debugger attached successfully.
Server compiler detected.
  JVM version is 25.162-b12
  Exception in thread "main" java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at  sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)        
    at java.lang.reflect.Method.invoke(Method.java:498)
    at sun.tools.jstack.JStack.runJStackTool(JStack.java:140)
    at sun.tools.jstack.JStack.main(JStack.java:106)
 Caused by: java.lang.RuntimeException: Unable to deduce type of thread from address 0x00007f02cc002800 (expected type JavaThread, CompilerThread, ServiceThread, JvmtiAgentThread, or SurrogateLockerThread)
    at sun.jvm.hotspot.runtime.Threads.createJavaThreadWrapper(Threads.java:166)
    at sun.jvm.hotspot.runtime.Threads.first(Threads.java:150)
    at sun.jvm.hotspot.tools.PStack.initJFrameCache(PStack.java:200)
    at sun.jvm.hotspot.tools.PStack.run(PStack.java:71)
    at sun.jvm.hotspot.tools.PStack.run(PStack.java:58)
    at sun.jvm.hotspot.tools.PStack.run(PStack.java:53)
    at sun.jvm.hotspot.tools.JStack.run(JStack.java:66)
    at sun.jvm.hotspot.tools.Tool.startInternal(Tool.java:260)
    at sun.jvm.hotspot.tools.Tool.start(Tool.java:223)
    at …
Run Code Online (Sandbox Code Playgroud)

java ubuntu multithreading jstack

7
推荐指数
1
解决办法
1308
查看次数

jstack:似乎不是 HotSpot VM(在远程进程中找不到符号“gHotSpotVMTypes”)

我们在 Amazon Linux 上使用 Wildfly 11 和 Java 8。我们最近安装了jstack这个程序来解决 CPU 利用率高的问题,因为我们试图找出导致 CPU 旋转的代码。首先我们得到了Wildfly进程的PID...

[myuser@prodmachine ~]$ ps -elf | grep java
0 S jboss     1992     1  0  80   0 - 28275 -      Aug30 ?        00:00:00 /bin/sh /usr/java/wildfly/bin/standalone.sh -c standalone.xml
0 S jboss     2044  1992 45  80   0 - 7336044 -    Aug30 ?        5-13:38:33 /usr/java/default/bin/java -D[Standalone] -server -Xms64m -Xmx25600m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=1024m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman,com.newrelic -java.awt.headless=true -javaagent:/usr/java/wildfly/newrelic/newrelic.jar -Dorg.jboss.boot.log.file=/usr/java/wildfly/standalone/log/server.log -Dlogging.configuration=file:/usr/java/wildfly/standalone/configuration/logging.properties -jar /usr/java/wildfly/jboss-modules.jar -mp /usr/java/wildfly/modules org.jboss.as.standalone -Djboss.home.dir=/usr/java/wildfly -Djboss.server.base.dir=/usr/java/wildfly/standalone -c standalone.xml
0 S 602       3630 …
Run Code Online (Sandbox Code Playgroud)

java multithreading cpu-usage jvm-hotspot jstack

6
推荐指数
1
解决办法
1万
查看次数