我想知道如何用不同的userName和密码执行java Application。 例如: 现在:当我这样做时,
System.getProperty("user.name");
我得到user1
。
但我希望以这样一种方式编程:user2
。
有人可以帮助我如何使用Java或bat文件来完成此任务。 任何形式的帮助都表示赞赏。
答案 0 :(得分:6)
java系统属性user.name
由操作系统设置。因此,如果您以其他用户身份登录并开始使用java程序,它将在该用户名下运行。
但您也可以更改执行程序的用户(如果您有足够的权限!)。
Linux :使用sudo命令
sudo -u user2 java yourprogram
(但您需要sudo rights,例如 root )
Windows 使用runas命令:
runas /user:domain\user2 java yourprogram
答案 1 :(得分:2)
您可以覆盖此值,与使用
的任何其他系统属性相同java -Duser.name=my-new-user
或
System.setProperty("user.name", "my-new-user");
注意:两个解决方案都不会更改进程的用户标识,只会更改System.getProperty(“user.name”)返回的值;
答案 2 :(得分:1)
您需要切换到用户2(Linux上的su user2
),然后运行您的程序。
答案 3 :(得分:1)