デバッガーを使う場合は、デバッグモードで起動します。コレ当たり前。
で、デバッグモードで起動したかどうかで、アプリの振る舞いを変えたい場合があります。
例えば、処理のタイムアウトをやめる等。デバッグモードだとありとあらゆるモノが遅くなるからタイムアウトはナンセンスだし。
やり方
こうします。JMXを使うわけですね。Stackoverflowのどっかに載ってました。
boolean debug = ManagementFactory.getRuntimeMXBean().getInputArguments() .toString().contains("-agentlib:jdwp");