2. 文件:org.eclipse.core.resources.prefs
org.eclipse.core.resources.prefs文件其实就是规定项目内的文件的编码用的。一般来说一个项目里的文件编码需要一致,特别是文件文本内容本身无法指示文件本身编码的(比较绕,XML文件第一行能指示自身编码,CSS也有这个能力但用得不多),尽量不要多种编码同时存在(最好在编码规范中禁止多重编码同时存在的现象发生)。
典型内容
eclipse.preferences.version=1 encoding//src/main/java=UTF-8 encoding//src/main/resources=UTF-8 encoding//src/test/java=UTF-8 encoding//src/test/resources=UTF-8 encoding/<project>=UTF-8
使用示例
一般正常的项目打开后,应该看到是统一的编码,如果存在例外,可以对例外的文件进行转码,然后删除这个文件中例外的那一行。
拷贝攻略
org.eclipse.core.resources.prefs文件可以从同类型的项目中直接拷贝,无需修改。
3. 文件:org.eclipse.jdt.core.prefs
org.eclipse.jdt.core.prefs文件指定了一些Java编译的特性,比如Java版本之类的,看文件每一行的key能猜出具体的用处。
典型内容
eclipse.preferences.version=1 org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 org.eclipse.jdt.core.compiler.compliance=1.7 org.eclipse.jdt.core.compiler.problem.assertIdentifier=error org.eclipse.jdt.core.compiler.problem.enumIdentifier=error org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning org.eclipse.jdt.core.compiler.source=1.7
使用示例
如果项目中源文件版本不正确,编译出来的目标版本不对,那么可以在这里进行修改。界面中修改的话,可以参考:
拷贝攻略
org.eclipse.jdt.core.prefs文件可以从同类型的项目中直接拷贝,无需修改。
4. 文件:org.eclipse.m2e.core.prefs
org.eclipse.m2e.core.prefs是一些maven相关的配置。
典型内容
eclipse.preferences.version=1 activeProfiles=dev resolveWorkspaceProjects=true
version=1
使用示例
一般在Maven项目开发时和生产环境中配置不一样,可以在pom.xml中指定不同的profile来实现,Eclipse项目开发时指定profile的话(比如指定名叫dev的profile),就可以配置这个文件的activeProfiles属性。如果在界面中配置,在这里:
拷贝攻略
org.eclipse.m2e.core.prefs文件可以从同类型的项目中直接拷贝,无需修改。
5. 文件:org.eclipse.wst.common.component
org.eclipse.wst.common.component文件规定了项目怎么组装成一个webapp,这里可以玩很多种组装方式。
<?xml version="1.0" encoding="UTF-8"?> <project-modules id="moduleCoreId" project-version="1.5.0"> <wb-module deploy-name="inkfish-web"> <wb-resource deploy-path="/" source-path="/target/m2e-wtp/web-resources"/> <wb-resource deploy-path="/" source-path="/src/main/webapp" tag="defaultRootSource"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/java"/> <wb-resource deploy-path="/WEB-INF/classes" source-path="/src/main/resources"/> <property name="context-root" value="inkfish-web"/> <property name="java-output-path" value="/inkfish-web/target/classes"/> </wb-module> </project-modules>
典型内容
使用示例
在某些项目中,从远程maven仓库下载zip组件(当然war组件最好,是maven自带支持的)解压并放到target,作为webapp一部分,就可以在这里修改组装webapp的方式。如果在界面中配置,在这里:
.classpath的界面配制方法
拷贝攻略
org.eclipse.wst.common.component文件不可直接拷贝,如需拷贝注意修改deploy-name、某些value等一些与项目名称相关的信息。
6. 文件:org.eclipse.wst.common.project.facet.core.xml
org.eclipse.wst.common.project.facet.core.xml指示了项目中启用那些facet及facet的版本。
典型内容
<?xml version="1.0" encoding="UTF-8"?> <faceted-project> <runtime name="Apache Tomcat v8.0"/> <fixed facet="wst.jsdt.web"/> <installed facet="wst.jsdt.web" version="1.0"/> <installed facet="java" version="1.7"/> <installed facet="jst.web" version="3.1"/> </faceted-project>
使用示例
界面配置在下面的位置:
在实际使用中有时候在Eclipse的facet配置了以后又恢复回去了,总是配不成功,那么就可以直接修改这个文件。常见的比如servlet版本不匹配,那么就可以修改jst.web这个facet的version,如果java版本不对,那么可以修改java这个facet的version。
拷贝攻略
org.eclipse.wst.common.project.facet.core.xml文件可以从同类型的项目中直接拷贝,基本无需修改。
9. 文件:org.eclipse.wst.validation.prefs
使用不多,无研究,略去。
典型内容
1. disabled=06target 2. eclipse.preferences.version=1
拷贝攻略
org.eclipse.wst.validation.prefs文件可以在项目间项目直接拷贝,无需修改。
五. 写在后面
有的配置是前后关联的,不是调整一个配置文件就能完事的,比如修改web工程里的Java版本,可能需要修改好几个配置文件。
这篇文章主要介绍了Eclipse项目中常见的自动生成的文件,这些文件都可以通过界面配置来修改,如果大量项目同时修改感觉界面配置比较麻烦,可以学习这些配置文件的内容。普通程序员只需要了解有这么个东西,出了一些界面上配置失灵的情况,可以直接修改文件
参考文章:http://blog.csdn.net/huaweitman/article/details/52351394