当前位置:  开发笔记 > 编程语言 > 正文

如何检测我的应用程序是否从IntelliJ启动?

如何解决《如何检测我的应用程序是否从IntelliJ启动?》经验,为你挑选了1个好方法。

我可以将我的应用程序作为独立应用程序(例如从命令行)或一种特定方式启动 - 它直接来自"源代码",即使用IntelliJ.

有没有办法检测应用程序是否从IntelliJ启动?只有这个,二元决定.

解决方法很多,在启动时添加了额外的选项,但是我正在寻找直接解决方案,对于C#这样 如何知道应用程序是由调试器启动的(VisualStudio)C#

该解决方案可以对任何IDE有效,但必须至少对IntelliJ有效.

小更新

对于那些(包括我)寻求准备使用代码(Scala代码):

object ProgramInfo
{
  val isStandaloneApp = sun.management.ManagementFactory.getRuntimeMXBean().getInputArguments.isEmpty
  val isDebugMode = scala.collection.JavaConversions.iterableAsScalaIterable(sun.management.ManagementFactory.getRuntimeMXBean().getInputArguments).exists(it => it.startsWith("-agentlib"))
}

它不适用于复杂的情况,但是如果你没有将大量参数传递给JVM,那就没关系了.



1> Amir Raminfa..:

我过去使用过以下内容来检查调试设置.你可以使用类似的东西

ManagementFactory.getRuntimeMXBean().getInputArguments()

在此输入图像描述


请注意,如果未在调试模式下启动已启动的应用程序,则此操作无效.
推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有