假设我将Java应用程序捆绑为jar(TestExec.jar
)。
问题发生在我想跟踪谁调用了我的应用程序时,我的意思是某个机构通过命令行调用的独立应用程序(就好像java -jar TextExec.jar
)或者只是双击或者可以通过计划任务(如在Windows中)。
所以我想......跟踪它......是通过命令行还是双击或预定接收。
是否有任何设施或类似的东西:)
答案 0 :(得分:4)
告诉的唯一方法是基于命令行参数或环境。您可以间接地解决这个问题,但我建议添加一个特定的参数,告诉您的程序预期的行为方式。
答案 1 :(得分:2)
假设您的jar有一个主类,并且您想通过调用它来跟踪谁使用了jar,您可以通过以下方式之一获取用户信息:
user.name
(非常不安全)获得用户的详细信息后,您可以将它们记录在一些常见的位置。
答案 2 :(得分:0)
您可以创建使用不同参数值调用它的外部文件。例如,创建一个传递src = bat的批处理文件,同时创建一个创建Windows服务的文件,并使用src = service调用它。 如果没有自己传递一些东西,我认为你无法分辨。