如何更改Eclipse模板中使用的$ {user}variables的值

而不是硬编码默认@author模板,我希望Eclipse使用帐户信息中的用户真实姓名(在Linux中 – 但Windows解决scheme也是受欢迎的)。 在Eclipseconfiguration中input它也是可以接受的,唉,我找不到合适的地方。

http://morlhon.net/blog/2005/09/07/eclipse-username/

看来最好的办法是在命令行重新定义java user.namevariables,或者在eclipse安装根目录下使用eclipse.ini文件。 这似乎对我很好:

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

打开Eclipse,进入窗口 – >首选项 – > Java – >代码样式 – >代码模板 – >注释 – >types,然后按'编辑'button。 在那里你可以改变你的名字在生成的评论forms@Author $ {user} to @Author Rajish。

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

在这里输入图像说明

或打开eclipse.ini文件并添加以下内容。

 -Duser.name=Sumit Singh // Your Name 

在这里输入图像说明

在Eclipse中,而不是改变${user} ,build议引入

-Duser.name=Whateverpleaseyou

在你的eclipse文件夹中的eclipse.ini中。

EGit解决scheme

人们会期望在基于项目,工作空间或环境的基础上创build或更改模板variables是标准的Eclipsefunction。 可悲的是,事实并非如此。 更重要的是,鉴于Eclipse插件可以定义新的variables和模板,应该有插件提供一个解决scheme。 如果是的话,他们一定很难find。 在Eclipse Marketplace中提供的mmm-TemplateVariable对于Maven用户来说是一个正确的方向,能够在模板中包含版本,artifactId等。

幸运的是, EGit是Git的一个Eclipse工具,为代码模板中包含许多不同的variables提供了非常灵活的手段。 唯一的要求是你的项目使用Git。 如果你不使用Git,但认真对待软件开发,现在是学习的时候了( Pro Git book )。 如果您不得不使用传统的版本控制系统,请尝试改变一些想法。

由于harmsk的努力,EGit 4.0及以上版本包含了在模板中使用Gitconfiguration键值的function。 这允许根据资源库设置(项目),用户设置(帐户)和/或全局设置(工作站)设置模板值。

以下示例显示如何为多用户开发工作站设置Eclipse和Git,并使用自定义Gitconfiguration密钥来代替${user}以提供更大的灵活性。 虽然这个例子是基于Eclipse的Mars Mars和Git for Windows的Windows 10安装的,但是这个例子适用于使用它们各自的命令行工具运行Eclipse和Git的Linux和OSX。

为了避免Git的user.nameconfiguration密钥和Java的user.name系统属性之间可能的混淆,一个定制的Gitconfiguration密钥user.author将被用来提供一个作者的名字和/或证书。

configuration模板

Git模板variables的格式如下

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

其中<name>是任意的variables名称, <key>是应该使用其值的Gitconfiguration键。 鉴于此,将“ 评论”→“types”模板更改为

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

现在将尝试从Git的user.authorconfiguration键中parsing作者的名字。 没有任何进一步的configuration,任何新创build的评论将不会在@author之后包含一个名字,因为还没有定义。

configurationGit

从命令行

Git System ConfigurationGit系统configuration) – 此configuration步骤对Git的适用于工作站上所有帐户的系统范围configuration进行更改,除非用户或存储库设置被覆盖。 由于系统范围的configuration是基础Git应用程序(例如Git for Windows)的一部分,所以更改将需要pipe理员权限。 以pipe理员身份运行Git Bash,cmd或PowerShell。 以下命令将设置系统范围的作者。

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

这个“作者”的目的是作为提醒,应该在其他地方设置。 当在工作站上使用新的用户帐户时,这是特别有用的。

要validation此设置,请创build一个使用Git的空白Java项目,或者打开一个现有的基于Git的项目。 创build一个类并使用上下文菜单中的Source→Generate Element CommentALT-SHIFT-J ,或者启动一个JavaDoc注释。 产生的@author标签之后应该是警告。

其余configuration更改可以在没有pipe理员权限的情况下执行

Git Global(用户)configuration – 全局或用户configuration是与特定用户关联的configuration,并将覆盖系统范围的configuration。 这些设置适用于所有基于Git的项目,除非被存储库设置覆盖。 如果作者姓名因工作types,开源贡献,个人等不同的项目types而有所不同,请在此设置最常用。

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

configuration全局值后,返回到早期使用的testing项目并应用类注释。 @author标签现在应该显示全局设置。

Git存储库(本地)configuration – 最后,可以使用存储库或本地configuration为特定项目configuration作者。 与以前的configuration不同,存储库configuration必须在存储库内完成。 使用Git Bash,PowerShell等导航到testing项目的存储库。

 git config --local user.author “smithy” 

鉴于此,testing项目中的新评论将使用本地定义的作者姓名。 其他基于Git的项目仍将使用全局作者名称。

从Eclipse内部

上面的configuration更改也可以在Eclipse中通过它的Preferences:Team→Git-Configuration来设置 。 必须以pipe理员身份运行Eclipse才能更改系统范围的Gitconfiguration。

总共

虽然这个例子特别处理了最常见的问题,即更改${user} ,但这种方法可以用于更多。 但是,除非特意指定,否则应谨慎使用Git定义的configuration密钥。

dovescrywolf给小费作为对Davide Inglima连接的文章的评论

这对我在MacOS上非常有用。

  • 如果打开,closuresEclipse。
  • 打开Termnal(bash控制台),做下面的事情:

    $ pwd / Users / You / YourEclipseInstalationDirectory
    $ cd Eclipse.app/Contents/MacOS/
    $ echo“Duser.name =您的名字”>> eclipse.ini
    $ cat eclipse.ini

  • closuresterminal并再次启动/打开Eclipse。

这是我们都在寻找的文件(在Eclipse工作区内):

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

你会find一个你想改变的@author标签。 重新启动Eclipse,它会工作。

对于重音你必须使用Unicode格式(例如'\ u00E1'为á)。

您也可以根据以前的答案build议修改'ini'文件,或者将全局解决scheme的用户名var设置为。 或者覆盖本地解决scheme的“首选项”菜单中的@author标记。 这些都是解决这个问题的有效办法。

但是,如果您正在寻找那个困扰我们大多数人的“那个”作者名字,那么就在那个文件中。

编辑文件/etc/eclipse.ini ,以包含条目为;

-Duser.name=myname

重新启动“eclipse”,现在,使用向导(c / c ++ / java)创build任何新文件时,将使用“myname”来代替$ {user}。

只是其他的select。 转到首选项>> JAVA >>编辑>>模板 ,select@作者,并更改variables$ {用户}。