Intellij调试器不会在断点处停止 [英] Intellij debugger does not stop at breakpoints

查看:1481
本文介绍了Intellij调试器不会在断点处停止的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一定是在做错事。我是intellij的新手。从日食中切换。我有一个在weblogic上运行的JAX WS应用程序。要部署的工件是ear文件。我一直在努力让Intellij工作的调试器。我有终极版。我确实创建了一个运行调试配置,但它只是通过代码而不是停在我想要的位置。调试器显示没有支票或十字的红点。

I must be doing something wrong here. I am new to intellij. Making switch from eclipse. I have a JAX WS application that runs on weblogic. The artifact to deploy is an ear file. I have been struggling to get debugger on intellij working. I have the ultimate edition. I did create a run debug configuration but it just passes through the code and does not stop at my desired location. The debugger shows a red dot without a check or a cross.

编辑 - 我正在运行本地运行/调试配置。

Edit - I am running a "local" run/debug configuration.

以下是我的运行/调试配置的屏幕截图。

Here is a screen shot of my run/debug configuration.

以下是启动/连接的屏幕截图

Here is the screen shot of startup/Connection

推荐答案

我弄清楚我的问题是什么,我认为问题是针对我和我的应用程序的性质。实际上我应该把它称为自我引发的问题。让我解释事件的本质。

I figured out what my issue was and I think the problem is specific to me and the nature of my application. Actually I should call it a self induced issue. Let me explain the nature of events.


  1. 我一直在使用eclipse进行开发并在本地安装weblogic实例。我的应用程序需要一致性缓存服务器,并且我在启动域时几乎没有其他JVM参数。因此,我在 $ DOMAIN_HOME / bin / setDomainEnv.sh 文件的开头添加了一行,如此

  1. I have been using eclipse to develop and have a local install of weblogic instance. My application needs coherence cache server and I have few other JVM parameters that I pass when starting the domain. Therefore I had added a line at the start of the $DOMAIN_HOME/bin/setDomainEnv.sh file like so

JAVA_OPTIONS = - Dtangosol.coherence.distributed.localstorage = false -Dtangosol.coherence.wka = devmachine and blah blah blah

我切换到intellij并开始处理这个项目然后配置weblogic插件并运行配置等。

I switched to intellij and started working on this project and then configured the weblogic plugin and run configuration etc.

< img src =https://i.stack.imgur.com/1xnur.pngalt =在此处输入图像说明>


  1. 然而,intellij传递的JAVA_OPTIONS没有被weblogic使用。我相信它被setDomainEnv.sh中的内容覆盖了,这就是我看到以下日志的原因。

java版1.6.0_65
Java(TM)SE运行时环境(版本1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM)64位服务器VM(版本20.65-b04-466.1,混合模式)
启动WLS with line:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -client -Xms512m -Xmx512m -XX:MaxPermSize = 256m -Dweblogic.Name = AdminServer -Djava。 security.policy = / Users / dparupud / omw / oracle / middleware / weblogic_10.3.6 / wlserver_10.3 / server / lib / weblogic.policy -Dtangosol.coherence.distributed.localstorage = false -Dtangosol.coherence.wka = devmachine blah blah等等......

java version "1.6.0_65" Java(TM) SE Runtime Environment (build 1.6.0_65-b14-466.1-11M4716) Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-466.1, mixed mode) Starting WLS with line: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -client -Xms512m -Xmx512m -XX:MaxPermSize=256m -Dweblogic.Name=AdminServer -Djava.security.policy=/Users/dparupud/omw/oracle/middleware/weblogic_10.3.6/wlserver_10.3/server/lib/weblogic.policy -Dtangosol.coherence.distributed.localstorage=false -Dtangosol.coherence.wka=devmachine blah blah blah......


  1. 当我去除时来自setDomainEnv.sh的JAVA_OPTIONS并从intellij重新启动服务器我看到以下日志

使用Java启动weblogic版本:
java版本1.6.0_65
Java(TM)SE运行时环境(版本1.6.0_65-b14-466.1-11M4716)
Java HotSpot(TM)64位服务器VM (构建20.65-b04-466.1,混合模式)
启动WLS with line:
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java -client -Xms512m -Xmx512m -XX:MaxPermSize = 256m -Dweblogic.Name = AdminServer -Djava。 security.policy = / Users / dparupud / omw / oracle / middleware / weblogic_10.3.6 / wlserver_10.3 / server / lib / weblogic.policy -
agentlib:jdwp = transport = dt_socket,address = 127.0.0.1:65501,suspend = y,server = n

现在日志显示jdwp代理正在运行。我确实注意到在我问SO之前我没有看到那个特定的日志但是我想也许IntelliJ在封面内做了一些事情因为JAVA_OPTIONS正在被传递而且intellij不允许你搞砸它(它是readonly)。

Now the log showed that the jdwp agent was in action. I did notice that I did not see that particular log before I asked the Question on SO but I thought maybe IntelliJ was doing something inside the covers because JAVA_OPTIONS was being passed and intellij does not allow you to mess with that ( it is readonly).

我想我可以从intellij传递我所有的jvm参数,也可以在setDomainEnv.sh中添加jdwp代理信息。

I guess I can either pass all my jvm parameters either from intellij or add the jdwp agent info in the setDomainEnv.sh.

现在我可以调试。

这篇关于Intellij调试器不会在断点处停止的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆