Eclipse创建一个项目后,都会为该项目创建一个.settings目录,可能很少有人会用到这个目录,所以它往往被大家忽略。最近为了在Eclipse自动创建的setter方法和构造函数的参数前面加个前缀,搜索了大量资料之后,最终在.settings目录下找到了解决方案。因此,特地花时间研究了一下该目录的功能。
从目录的命名就可以看出,它是与项目设置相关的。该目录主要包含两个文件:org.eclipse.jdt.core.prefs和org.eclipse.jdt.ui.prefs,利用NotePad++等软件可以查看和编辑这些文件。
1. org.eclipse.jdt.core.prefs
该文件是与Compile相关的配置,一般情况下的内容如下:
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.6
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.6
可以手动修改该文件,添加一些其他的配置,然后重启Eclipse后就可以生效。例如,前面提到的在Eclipse自动创建的setter方法和构造函数的参数前面加个前缀,只需要在该文件末尾加上org.eclipse.jdt.core.codeComplete.argumentPrefixes=new,就可以在自动创建的方法的所有参数前面加上new前缀。其实,还可以进行其他类似的设置,例如:
org.eclipse.jdt.core.codeComplete.argumentPrefixes=
org.eclipse.jdt.core.codeComplete.argumentSuffixes=
org.eclipse.jdt.core.codeComplete.fieldPrefixes=
org.eclipse.jdt.core.codeComplete.fieldSuffixes=
org.eclipse.jdt.core.codeComplete.localPrefixes=
org.eclipse.jdt.core.codeComplete.localSuffixes=
org.eclipse.jdt.core.codeComplete.staticFieldPrefixes=
org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=
该文件能够进行的配置非常多,没有搜索到具体能够进行哪些配置的详细文档,但是Eclipse的官网上找到一个稍微全面一点的
示例文档,可供大家参考。
2. org.eclipse.jdt.ui.prefs
该文件是与code style相关的配置,用来记录通过Eclipse的UI界面对项目的一些格式方面的设置,一般情况下的内容如下:
eclipse.preferences.version=1
editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
org.eclipse.jdt.ui.javadoc=true
org.eclipse.jdt.ui.text.custom_cod