为了账号安全,请及时绑定邮箱和手机立即绑定

我的 Jar 是双击还是从命令行启动的?

我的 Jar 是双击还是从命令行启动的?

犯罪嫌疑人X 2021-07-09 10:53:18
我的 Jar 文件支持单击和从命令行启动。如果通过检查有可用的图形环境,我将仅显示 GUI GraphicsEnvironment.isHeadless()如果用户双击 jar 文件,我希望能够将日志打印到磁盘上的文件,如果从命令行启动,则将它们打印到控制台。我一直无法找到答案,是否有任何跨平台环境变量,或者我可以查看的任何其他内容,以了解用户是否使用java -jar app.jar启动了我的程序,或者他们是否双击了 . jar 文件?
查看完整描述

1 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

一种方法是确定控制台何时为空:


public static void main(String[] args) {

    Console console = System.console();

    if(console!=null){

        System.out.println("Console is not null");

    }else{

        System.out.println("Console is null");

    }

}

尝试使用以下命令从命令行运行代码:


java -jar [your_runnable_file.jar]


查看完整回答
反对 回复 2021-07-14
  • 1 回答
  • 0 关注
  • 155 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信