Java 我们如何用IntelliJ IDEA编写自己的代码模板文件

Java 我们如何用IntelliJ IDEA编写自己的代码模板文件,java,intellij-idea,code-templates,Java,Intellij Idea,Code Templates,我需要在IntelliJ IDEA项目中创建一个示例代码模板,这样团队中的每个人都可以在IDE中导入并使用它 我可以自己在自己的机器上通过更改“类”模板来实现这一点,但我没有任何方法让我的团队可以使用它,就像将它导出到可以使用的文件一样,在Eclipse中,每个人都可以在Eclipse工作区中导入一个sampleCodeFormatter.xml文件 同样的事情在IntelliJ IDEA中是如何工作的?首先,在IntelliJ中,打开设置(ctrl-alt-s),在IDE设置下查找文件和代码模

我需要在IntelliJ IDEA项目中创建一个示例代码模板,这样团队中的每个人都可以在IDE中导入并使用它

我可以自己在自己的机器上通过更改“类”模板来实现这一点,但我没有任何方法让我的团队可以使用它,就像将它导出到可以使用的文件一样,在Eclipse中,每个人都可以在Eclipse工作区中导入一个sampleCodeFormatter.xml文件


同样的事情在IntelliJ IDEA中是如何工作的?

首先,在IntelliJ中,打开设置(ctrl-alt-s),在IDE设置下查找
文件和代码模板
,并查看
模板
选项卡

您将在那里看到一些模板,例如有一个名为
Class

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
public class ${NAME} {
}
请注意,它包括
文件头
,可在
包括
选项卡下找到

现在,您可以在这里轻松创建自己的文件模板。在
Templates
选项卡下,只需点击绿色的“Add”按钮,为新模板命名(
Foo
?),确保扩展名为java并编写有效的java类

保存,并且新配置的模板存在于此处:

C:\Users\{USER}\.IntelliJIdea12\config\fileTemplates\Foo.java
您应该能够与您的团队共享此文件


一个简洁的特性是,在java项目的项目窗格中,在源根目录下,点击
alt-enter
,选择一个新的java类,然后在种类下拉列表下——瞧!您可以将您的
Foo
模板视为有效选项。

以下是我的
文件头的内容。java

/**
 * Project: ${PROJECT_NAME}
 * Package: ${PACKAGE_NAME}
 * <p>
 * User: ${USER}
 * Date: ${DATE}
 * Time: ${TIME}
 * <p>
 * Created with IntelliJ IDEA
 * To change this template use File | Settings | File Templates.
 */
/**
*项目:${Project_NAME}
*包:${Package_NAME}
*
*用户:${User}
*日期:${Date}
*时间:${Time}
*
*用IntelliJ IDEA创建
*要更改此模板,请使用文件|设置|文件模板。
*/

在.idea目录下搜索文件;模板可能在其中一个xml文件中。谢谢您的回复。我可以在Templates选项卡下创建一个java文件,这很好,我可以在位置C:\Users\{USER}\.IntelliJIdea12\config\fileTemplates\下访问该文件,但我想要的是默认模板被我的FooClass模板覆盖,这样当任何人创建一个新类时,FooClass模板会被选中,而不是默认模板,我不能这样做,因为当我创建一个新的Java类时,它仍然从默认模板而不是我的FooClass模板中获取。我想对所有其他的事情做类似的处理,比如:FooInteface fooneum FooAnnotationOk,那么你想修改默认的类模板吗?在文件和代码模板中,只需修改模板,查看C:\Users\{User}\.IntelliJIdea12\config\fileTemplates\internal\并与同事共享Class.java。非常感谢Steve!那正是我要找的\n现在我想为默认接口、枚举和注释执行此操作,但在intelliJ安装中,我无法在同一路径中看到类似于class.java的Interface.java文件:C:\Users\{User}\.IntelliJIdea12\config\fileTemplates\internal\\n我假设它们应该与Class.java相同,但似乎不是这样。那么,它们是否存储在intelliJ中的其他位置?它们确实存储在同一位置,您只需先修改intelliJ中接口、枚举和注释的模板,然后它们就会出现在文件系统中。玩得开心点!;)谢谢分享这些信息…这很奇怪!。。哦,这也解释了为什么我不能在团队成员的机器上看到同一路径上的class.java文件。但这又是一个缺点,因为我不能将class.java文件交给我的团队成员,并要求他们(重新)将class.java放在该位置下,因为他们在那里看不到任何文件?这就是我的全部目的!