Eclipse 템플리트에서 사용되는 $ {user} 변수의 값을 변경하는 방법


260

기본 @author 템플릿을 하드 코딩하는 대신 Eclipse가 계정 정보에서 가져온 사용자의 실제 이름을 사용하기를 원합니다 (Linux에서는-Windows 솔루션도 환영합니다). 이클립스 구성에 어딘가에 들어가는 것도 허용 될 것입니다. 아마도 적절한 곳을 찾을 수 없습니다.


1
궁금한 점이 있으면 System.getProperty ( "user.name")를 호출하여 변수의 기본 버전을 얻을 수 있으며 Java의 위치는 시스템에 따라 다릅니다.
Maciej Biłas 2009

이 기사는 일식이 내가 찾은 변수의 값을 결정하는 데 사용하는 순서를 보여줍니다. martijndashorst.com/blog/2006/04/21/…
Steven Mai

: StevenMai의 링크는 여기에 보관 된 버전은 ... 죽은 web.archive.org/web/20180927010751/http://...
Sometowngeek

답변:


285

가장 좋은 방법은 user.name명령 행에서 또는 eclipse.iniEclipse 설치 루트 디렉토리 의 파일을 사용하여 Java 변수 를 재정의하는 것 같습니다 .

이것은 나를 위해 잘 작동하는 것 같습니다 :

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256M
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Duser.name=Davide Inglima
-Xms40m
-Xmx512m    

최신 정보:

http://morlhon.net/blog/2005/09/07/eclipse-username/ 은 죽은 링크입니다 ...

새로운 것이 있습니다 : https://web.archive.org/web/20111225025454/http://morlhon.net:80/blog/2005/09/07/eclipse-username/


16
이로 인해 사용자 ID (user.name 특성의 문서화 된 값)를 알아야하는 플러그인이 손상 될 수 있습니다. Eclipse가 해당 변수에 사용할 값을 조정하는 더 좋은 방법이 있다면 좋을 것입니다.
Diastrophism

30
나에게 "문제를 일으킨 다면 , 나는해야했다 : -Duser.name=Ron Kitay올바르게 행동하기 위해서
RonK

27
더 나은 솔루션은 Eclipse가 $ {programmer}와 같이 템플릿에서 정의한 다음 사용할 수있는 다른 변수를 갖거나 사람들이 자신의 변수를 만들 수있게하는 것입니다. 그러나 이것은 이클립스입니다.
Scott Biggs

3
-Duser.name와야 -vmargs (이클립스 화성 테스트) 플래그.
Jan Chimiak


96

Eclipse를 열고 창-> 환경 설정-> Java-> 코드 스타일-> 코드 템플리트-> 주석-> 유형으로 이동 한 다음 '편집'단추를 누르십시오. 여기에서 생성 된 주석의 이름을 @Author $ {user}에서 @Author Rajish로 변경할 수 있습니다.


41
그것은 질문에 대한 답이 아닙니다
Rajish

15
@Rajish : 당신은 절대적으로 맞지만 유일한 합리적인 해결책 일 수 있습니다. 옵션을 평가 한 후 내가 한 일입니다.
Scott Biggs

13
이것은 내 의견으로는 가장 좋은 대답입니다-명령 줄과 eclipse.ini를 엉망으로 만드는 대신 플랫폼에 따라 다르며 수행 할 작업에 너무 번거 롭습니다. 단지 프로젝트 당 설정을 원합니다. 위에서 제안한 것과 같은 프로젝트 속성이 현재 유일한 방법 일 수 있습니다.
amn

2
Java뿐만 아니라 Eclipse를 사용하는 많은 언어와 편집기가 있기 때문에 정답이 아니라고 생각합니다. 따라서 다른 모든 언어가 아닌 Eclipse를 사용하여 Java를 편집하는 사람들의 문제 만 해결하십시오.
Lucas Gabriel Sánchez

4
다른 사용자와 공유 템플리트 정의를 사용하는 경우에도이 솔루션은 적합하지 않습니다.
Christopher Barber

36
Windows > Preferences > Java > Code Style > Code Templates > Comments

여기에 이미지 설명을 입력하십시오

또는 eclipse.ini파일을 열고 다음을 추가하십시오.

-Duser.name=Sumit Singh // Your Name

여기에 이미지 설명을 입력하십시오


18

EGit 솔루션

프로젝트, 작업 공간 또는 환경 기반에서 템플릿 변수를 작성하거나 변경하는 것이 표준 Eclipse 기능 일 것으로 예상합니다. 슬프게도 그렇지 않습니다. 더욱이 Eclipse 플러그인이 새로운 변수와 템플릿을 정의 할 수 있다면 솔루션을 제공하는 플러그인이 있어야합니다. 그들이 있다면 찾기가 어려워 야합니다. Eclipse Marketplace에서 사용할 수있는 mmm-TemplateVariable 은 Maven 사용자에게 올바른 방향으로 나아가는 단계로 템플릿에 버전, artifactId 등을 포함 할 수 있습니다.

다행히도 Git 용 Eclipse 도구 인 EGit 은 코드 템플릿에 다양한 변수를 포함 할 수있는 매우 유연한 수단을 제공합니다. 유일한 요구 사항은 프로젝트가 Git을 사용해야한다는 것입니다. Git을 사용하지 않지만 소프트웨어 개발에 대해 진지한 경우 이제 배울 시간입니다 ( Pro Git book ). 레거시 버전 제어 시스템을 사용해야하는 경우 마음을 바꿔보십시오.

harmsk 의 노력 덕분에 EGit 4.0 이상에는 템플릿에서 Git 구성 키 값을 사용할 수있는 기능이 포함되어 있습니다. 이를 통해 리포지토리 설정 (프로젝트), 사용자 설정 (계정) 및 / 또는 전역 설정 (워크 스테이션)을 기반으로 템플릿 값을 설정할 수 있습니다.

다음 예제는 다중 사용자 개발 워크 스테이션에 Eclipse 및 Git을 설정하고 ${user}유연성을 제공하는 대신 사용자 정의 Git 구성 키를 사용하는 방법을 보여줍니다 . 이 예제는 Windows 용 Eclipse Mars and Git의 Windows 10 설치를 기반으로하지만, 해당 명령 행 도구를 사용하여 Eclipse 및 Git을 실행하는 Linux 및 OSX에 적용 할 수 있습니다.

Git user.name구성 키와 Java user.name시스템 속성 간의 혼동을 피하기 위해 사용자 정의 Git 구성 키 – user.author–를 사용하여 작성자의 이름 및 / 또는 자격 증명을 제공합니다.

템플릿 구성

Git 템플릿 변수의 형식은 다음과 같습니다

${<name>:git_config(<key>)}

여기서 <name>임의의 변수 이름이며 <key>값을 사용해야하는 Git 구성 키입니다. 이 경우 주석 → 유형 템플릿을 다음으로 변경하십시오.

/**
 * @author ${author:git_config(user.author)}
 *
 * ${tags}
 */

이제 Git의 user.author구성 키 에서 작성자 이름을 확인하려고 시도합니다 . 추가 구성이 없으면 새로 정의 된 주석에는 @author아직 정의 된 것이 없으므로 이후에 이름이 포함되지 않습니다 .

힘내 구성

명령 행에서

Git 시스템 구성 -이 구성 단계에서는 Git의 시스템 전체 구성을 사용자 또는 저장소 설정으로 재정의하지 않는 한 워크 스테이션의 모든 계정에 적용 할 수 있습니다. 시스템 전체 구성은 기본 Git 응용 프로그램 (예 : Windows 용 Git)의 일부이므로 관리자 권한이 필요합니다. Git Bash, cmd 또는 PowerShell을 관리자 권한으로 실행하십시오. 다음 명령은 시스템 전체 작성자를 설정합니다.

git config --system user.author “SET ME IN GLOBAL(USER) or REPOSITORY(LOCAL) SETTINGS”

이“저자”의 목적은 다른 곳에 설정해야한다는 것을 상기시키는 역할을합니다. 워크 스테이션에서 새 사용자 계정을 사용하는 경우 특히 유용합니다.

이 설정을 확인하려면 Git을 사용하는 빈 Java 프로젝트를 작성하거나 기존 Git 기반 프로젝트를여십시오. 클래스를 작성 하고 컨텍스트 메뉴 ALT-SHIFT-J 에서 소스 → 요소 주석 생성을 사용 하거나 JavaDoc 주석을 시작하십시오. 결과 태그 뒤에 경고가 표시되어야합니다.@author

나머지 구성 변경은 관리자 권한없이 수행 할 수 있습니다.

Git Global (사용자) 구성 -전역 또는 사용자 구성은 특정 사용자와 관련된 구성이며 시스템 전체 구성을 무시합니다. 이 설정은 리포지토리 설정으로 재정의하지 않는 한 모든 Git 기반 프로젝트에 적용됩니다. 저작물, 오픈 소스 기여 또는 개인과 같은 다양한 프로젝트 유형으로 인해 저자 이름이 다른 경우 가장 자주 사용되는 항목을 여기에 설정하십시오.

git config --global user.author “Mr. John Smith”

글로벌 값을 구성한 후 초기에 사용한 테스트 프로젝트로 돌아가서 클래스 주석을 적용하십시오. 이제 @author태그에 전역 설정이 표시되어야합니다.

Git 리포지토리 (로컬) 구성 -마지막으로 리포지토리 또는 로컬 구성을 사용하여 특정 프로젝트의 작성자를 구성 할 수 있습니다. 이전 구성과 달리 저장소 구성은 저장소 내에서 수행해야합니다. Git Bash, PowerShell 등을 사용하여 테스트 프로젝트의 저장소로 이동하십시오.

git config --local user.author “smithy”

이를 감안할 때 테스트 프로젝트의 새로운 주석은 로컬로 정의 된 작성자 이름을 사용합니다. 다른 Git 기반 프로젝트는 여전히 글로벌 저자 이름을 사용합니다.

Eclipse 내에서

위의 구성 변경은 Eclipse에서 환경 설정 : Team → Git-Configuration을 통해 설정할 수도 있습니다 . 시스템 전체 Git 구성을 변경하려면 Eclipse를 관리자로 실행해야합니다.

요약해서 말하면

이 예제는 가장 일반적인 문제, 변경 문제를 다루었지만이 ${user}방법을 더 많이 사용할 수 있습니다. 그러나 특별히 의도 된 것이 아니라면 Git 정의 구성 키를 사용하지 않도록주의해야합니다.


이것은 좋지만 ${author:git_config(user.name)}이미 표준이므로 사용하지 않는 이유 는 무엇입니까?
RobertDeRose

@RobD-게시물에서 언급 한 것처럼 (위에서 5 번째 단락) 혼동을 피하기 위해. 원하는 것을 자유롭게 사용할 수 있습니다. 프로덕션 환경에서는 프로젝트 구성 항목과 시스템 구성 항목을 분리하는 것이 좋습니다.
Frelling

16

${user}일식을 바꾸는 대신 에 소개하는 것이 좋습니다

-Duser.name=Whateverpleaseyou

eclipse.ini있는 이클립스 폴더에 존재한다.


3
-1 아니요, UTF-8로 저장된 eclipse.ini도 àôéù 같은 프랑스어 악센트를 올바르게 처리하지 못합니다.
Aubin

26
4 년 후 게시 된 솔루션과 동일한 솔루션의 게시 요점은 무엇입니까?
PhiLho

2
@Aubin 실제로 지금은 문제없이 áóë ..와 같은 악센트를 지원하는 일식을 실행하고 있습니다. 따라서 이것은 정확하고 유용한 답변입니다.
Lucas Gabriel Sánchez

1
@PhiLho이 답변은 간결하고 간결하며 3 문장으로 만 구성됩니다. 또한 선택한 답변의 링크가 끊어졌습니다.
johnnieb

3

dovescrywolf는 Davide Inglima가 링크 한 기사에 대한 주석으로 팁을주었습니다.

그것은 MacOS에서 나에게 매우 유용했습니다.

  • Eclipse가 열려 있으면 닫습니다.
  • Termnal (bash 콘솔)을 열고 아래 작업을 수행하십시오.

    $ pwd /Users/You/YourEclipseInstalationDirectory  
    $ cd Eclipse.app/Contents/MacOS/  
    $ echo "-Duser.name=Your Name" >> eclipse.ini  
    $ cat eclipse.ini
  • 터미널을 닫고 Eclipse를 다시 시작 /여십시오.


1

이것은 우리 모두가 찾고있는 파일입니다 (Eclipse 작업 공간 내).

.plugins / org.eclipse.core.runtime / .settings / org.eclipse.jdt.ui.prefs

이름을 변경하려는 @author 태그를 찾을 수 있습니다. Eclipse를 다시 시작하면 작동합니다.

악센트의 경우 유니 코드 형식을 사용해야합니다 (예 : '\ u00E1').

사전 답변에서 제안한대로 'ini'파일을 수정하거나 글로벌 솔루션의 사용자 이름 var를 설정할 수도 있습니다. 또는 로컬 솔루션의 환경 설정 메뉴에서 @author 태그를 대체하십시오. 그것들은이 문제에 대한 유효한 해결책입니다.

그러나 우리 대부분을 괴롭히는 저자 이름을 찾고 있다면 그 파일에 있습니다.


이 옵션은 실제로 이클립스 환경 설정에 표시된 설정을 수동으로 수정합니다 ({user} 태그 제거).
Alfabravo

파일 위치가 Eclipse Luna에 유효하지 않습니다.
Martin Carney

그것은이다 $WORKSPACE/.metadata/.plugins/org.eclipse.core.runtime/.settings/화성에 ..., 또한 거기에 $WORKSPACE/$PROJECT/.settings/각 프로젝트에 대해 .... 언급 한 바와 같이, 이들은 작업 공간 또는 프로젝트 환경 설정으로보다 편하게 편집 할 수 있습니다 (OP에서 명시 적으로 제외).
Dirk

0

/etc/eclipse.ini항목을 포함하도록 파일을 편집하십시오 .

-Duser.name=myname

"eclipse"를 다시 시작하면 이제 마법사 (c / c ++ / java)를 사용하여 새 파일을 작성할 때 $ {user} 대신 "myname"을 사용합니다.


-1

창-> 환경 설정-> Java-> 코드 스타일-> 코드 템플릿-> 주석-> 유형 tage infront $ {user}를 이름으로 변경하십시오.

전에

/**
 * @author ${user}
 *
 * ${tags}
 */

/**
 * @author Waqas Ahmed
 *
 * ${tags}
 */

여기에 이미지 설명을 입력하십시오


-4

다른 옵션. 고토 환경 설정 >> JAVA >> EDITOR >> TEMPLATES , 선택 @author 및 변수 $ {사용자}을 변경합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.