如何检测代码在eclipse IDE中运行

Dip*_*ari 27 java ide

如何检测代码在eclipse IDE中运行

Rom*_*las 21

我不知道获取此类信息的通用方法.

一个建议:

当您在Tomcat中启动Java程序(或Web服务器)时,只需添加一个参数即可指示此程序是由Eclipse启动的.

您可以通过打开"打开运行对话框"("运行"菜单),然后选择您的应用程序类型并添加到"参数"选项卡中来实现-DrunInEclipse=true.

在Java代码中,您可以检查属性的值:

String inEclipseStr = System.getProperty("runInEclipse");
boolean inEclipse = "true".equalsIgnoreCase(inEclipseStr);
Run Code Online (Sandbox Code Playgroud)

这样,如果程序没有在Eclipse中运行(或者不幸的是,如果你忘了设置属性)属性将是null,然后布尔值inEclipse将等于false.


Jav*_*a42 6

1)创建一个辅助方法,如:

public boolean isDevelopmentEnvironment() {
    boolean isEclipse = true;
    if (System.getenv("eclipse42") == null) {
        isEclipse = false;
    }
    return isEclipse;
}
Run Code Online (Sandbox Code Playgroud)

2)在启动配置中添加环境变量:

在此输入图像描述

在此输入图像描述

3)用法示例:

if (isDevelopmentEnvironment()) {
    // Do bla_yada_bla because the IDE launched this app
}
Run Code Online (Sandbox Code Playgroud)


cba*_*dan 5

以下应该工作。

尽管我同意让代码检测单个 IDE 作为开发环境不是最佳解决方案。在运行时使用标志更好。

public static boolean isEclipse() {
    boolean isEclipse = System.getProperty("java.class.path").toLowerCase().contains("eclipse");
    return isEclipse;
}
Run Code Online (Sandbox Code Playgroud)

  • 请注意,如果您的项目依赖于其他 Eclipse 项目(例如 Jetty),这会产生误报。 (2认同)