2008-12-11 118 views
4

我有一个多用户eclipse(3.4)安装,共享主配置区。 用户需要覆盖user.name及其全名,并且通常的方法(添加-Duser.name = ...到eclipse.ini)不适合,因为覆盖必须是每个用户。 我试过设置在config.ini文件user.name(每个用户的configuration目录内):eclipse:覆盖config.ini中的user.name

user.name=Luca Tettamanti 

,但它的工作,月食仍然保留登录名。奇怪的是:

user.foobar=Luca Tettamanti 

被正确拾取。 是否有可能以某种方式覆盖此配置中的user.name?

+0

添加对自定义启动器的评论:是否适合您? – VonC 2008-12-11 15:19:45

+0

不是,但它给了我一个好主意,请参阅我的评论。谨慎解决您的答案以备将来参考? – 2008-12-11 15:37:45

+0

我已经修复了我的答案,包括您的评论。 – VonC 2008-12-11 15:52:04

回答

3

确实这个has been reported before

为什么不使用自定义的Eclipse启动程序(脚本.cmd),它会修改eclipse.ini,然后调用eclipse.exe?

该脚本可以用像COMAND检索全名:

eclipse.exe -clean --launcher.ini shared\eclipse.ini -vmargs -Duser.name=%FULL_NAME% 

使用共享:

net user %username% /domain | find /i "full" 

这样,在Windows中,您的自定义启动将日食与运行eclipse.ini,但指定了user.name值。


在Linux中,中继shell变量USER到Eclipse的内容,你需要做的是:

exec eclipse -clean --launcher.ini shared/eclipse.ini -vmargs -Duser.name=`eval "echo $USER"` 
0

我有点不清楚你的意图。

系统属性user.name非常重要,因为它应该反映曾经调用过JVM的用户名。

如果您是为了显示目的而进行此操作,并且您控制了正在使用它的插件,那么您应该使用自己的方法来发现显示名称。

@VonC描述的自定义config.ini或快捷方式将适用于此。