eclipse: переопределение user.name в config.ini

У меня многопользовательская установка eclipse (3.4) с общей областью конфигурации master. Пользователи должны переопределить user.nameсвое полное имя, и обычный метод (добавление -Duser.name = ... к eclipse.ini) не подходит, поскольку переопределение должно быть для каждого пользователя. Я попытался установить user.name в config.ini (внутри configurationкаталога каждого пользователя ):

user.name=Luca Tettamanti

но это работает, затмение по-прежнему сохраняет имя входа. Странно то, что:

user.foobar=Luca Tettamanti

правильно подобрано. Можно ли как-то переопределить user.name в этой конфигурации?

11.12.2008 13:33:14
Добавить комментарий о кастомном лаунчере: это сработало бы у вас?
VonC 11.12.2008 15:19:45
Не совсем, но это дало мне хорошую идею, см. Мой комментарий. Хотите исправить свой ответ для дальнейшего использования?
Luca Tettamanti 11.12.2008 15:37:45
Я исправил свой ответ, включая ваш комментарий.
VonC 11.12.2008 15:52:04
2 ОТВЕТА
РЕШЕНИЕ

Об этом уже сообщалось ранее .

Почему бы вам не использовать пользовательский модуль запуска eclipse (скрипт .cmd), который бы изменил файл eclipse.ini, а затем вызвал eclipse.exe?

Этот скрипт может получить полное имя с помощью такой команды:

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

Таким образом, в Windows ваш пользовательский модуль запуска будет запускать Eclipse с:

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

используя общий eclipse.ini, но указав user.nameзначение.


В Linux, чтобы передать содержимое переменной оболочки USERв Eclipse, вам нужно сделать это:

exec eclipse -clean --launcher.ini shared/eclipse.ini -vmargs -Duser.name=`eval "echo $USER"`
3
11.11.2013 14:41:07
Пользователи не могут писать в eclipse.ini, это нарушит цель общей установки ...
Luca Tettamanti 11.12.2008 15:00:35
Почти там :) Я нашел 2 решения: eclipse --launcher.ini user / eclipse.ini (файл ini для каждого пользователя) или: eclipse -vmargs -Duser.name =% FULL_NAME% (note -vmargs) Первое позволяет больше настройки, но последний легче поддерживать, так как есть только один INI-файл.
Luca Tettamanti 11.12.2008 15:34:10
Спасибо, Джоэл Корхонен , за редактирование для Linux.
VonC 11.11.2013 14:41:47

Я немного неясен относительно твоего намерения.

Свойство System user.nameявляется значимым, поскольку оно должно отражать имя пользователя, который когда-либо вызывал JVM.

Если вы делаете это для целей отображения, и у вас есть контроль над плагином, который его потребляет, то вам, вероятно, следует использовать собственный метод обнаружения отображаемого имени.

Для этого подойдет пользовательский файл config.ini или ярлык, описанный @VonC.

0
11.12.2008 14:02:34
Основная цель - получить удобочитаемое имя для $ {user} (шаблоны, коммиты SVN и т. Д.). Имя пользователя не имеет большого значения вне офиса. OTHO, как вы говорите, может полагаться на user.name, являющееся настоящим именем пользователя: |
Luca Tettamanti 11.12.2008 15:06:41
Я не уверен, что вы можете перезаписать системное свойство user.name.
jamesh 11.12.2008 17:45:49
Вы можете сделать это, но мне все еще интересно, хорошая ли это идея. Ничего не сломалось в моей настройке (пока) ...
Luca Tettamanti 12.12.2008 01:09:26