Eclipse的Project Facets属性
Project Facets
1. 'Project Facets'可理解为:项目的特性,主流 IDE (Eclipse IDEA) 都提供了 facet 的配置。
'Project Facets'作用:暂不描述,先看下面的实验。
2. 来个例子:
1) 新建一个java project(右键-->New-->Java Project)。

2) 来看一下他的'Project Facets'都选中了哪些属性(选中项目右键-->Properties-->Project Facets)
只选中了一个java有没有。这个是会被默认选中的配置。这是一个最简单的java项目。

3) 这时我想把这个java项目做成一个web项目。
3.1) Project Facets中选中Dynamic Web Module[动态web模板]
3.2) 点击Apply

3.3) 看看此时的项目结构发生了什么变化,增加了WebContent目录有木有。

3.4)重新打开Project Facets面板框,'JavaScript'选项框也被默认选中了。

4) 我又想在项目中使用JPA了。在Project Facets面板选中JPA,点击OK。看看项目结构发生了生么变化。
在src文件夹下,又多了JPA的元数据文件。

3. 其他选项的作用我也不是很明了,不再一一尝试了,但是'Project Facets'的作用应该可以理解了。
简单归纳一下'Project Facets'的作用特点(此处拷贝而来):
- facet 定义了 java ee 项目的特性和要求
- 为项目添加 EAR facet 会自动添加 web.xml (deployment descriptor file) ,并重新设置classpath
- 项目创建时至少已经有一个 facet,开发人员可以按需添加其他 facet
- 有的 facet 会依赖其他 facet
- 有的 facet 可能和其他 facet 互斥
- facet 可以设置版本
4. 总结:项目需要哪些应用,添加对应的特性即可。
Java Compiler
关于Java Compiler只说一点:
Java Compiler选择的版本必须和'Project Facets'中指定的java版本一致。
否则Eclipse会报异常:Javacompiler level does not match the version of the installed Java project facet。
附配置图一张:

Java Build Path
右侧一排按钮主要用来添加jar包,变量,类库,class文件等资源文件。不做细讲。
也只说明一点:
Java Build Path中引用的jdk的版本需要和'Project Facets'中配置的java版本一致。
Run Configurations面板中的JRE配置也需要和'Project Facets'中配置的java版本一致。
如果jdk版本不一致,会发生jsp文件无法正确编译的问题。
Eclipse的Project Facets属性的更多相关文章
- Eclipse的Project Facets属性设置解决项目无故报错
新检出项目,发现代码无故报错,各种尝试,最终发现是因为 项目右键中的 project Facets 属性中的 java 后面的 version 版本和项目 build path 的 jdk 版本不一 ...
- myeclipse/eclipse没有Project Facets的解决方法
http://www.cnblogs.com/jerome-rong/archive/2012/12/18/2822783.html 经常在eclipse中导入web项目时,出现转不了项目类型的问题, ...
- Eclipse中Project的属性Deployment Assembly(部署程序集)消失了,不存在了,去哪儿了
1. 该项目不是web项目,所以不存在Deployment Assembly 属性.在Eclipse中,怎样将一个非web project变成一个web project? 1)右键项目,选择Proje ...
- eclipse里没有project facets
我下载的eclipse版本问题,导入maven工程可以显示Dynamic web Module. 新建maven工程之后,点击工程属性里没有project facets,从而没有配置Dynamic w ...
- eclipse创建Maven Web项目以及无法修改Project Facets
1.在eclipse中创建maven项目,在菜单栏的:File-->New-->other中,搜索maven则会出现Maven Project; 2.点击next继续; 3.点击next继 ...
- 关于eclipse项目右键没有project facets的解决方法遇到的问题
[ 关于eclipse项目右键没有project facets的解决方法] [创建maven项目生成WebRoot目录,web.xml文件,以及修改编译路径classess的解决办法,以及解决找不到或 ...
- eclipse中project facet问题
一般出现在从别处import的项目上,只有项目文件夹上有红叉,其他地方都正常,现总结个人的几个解决方案: 有几种可能: 1,编码设置是否一致,也即是你项目原来的编码和现在eclipse用的默认编码是否 ...
- Dynamic Web Project vs Static Web Project 以及 Project facets
Dynamic Web Project vs Static Web Project 需要用到JSP,servlet等技术的动态服务器技术,就需要DWP:对于全部都是html页面的可以使用static ...
- ECLIPSE ANDROID PROJECT IMPORT SUMMARY
ECLIPSE ANDROID PROJECT IMPORT SUMMARY======================================Manifest Merging:------- ...
随机推荐
- Java中的ReentrantLock和synchronized两种锁定
原文:http://www.ibm.com/developerworks/cn/java/j-jtp10264/index.html 多线程和并发性并不是什么新内容,但是 Java 语言设计中的创新之 ...
- android http中请求访问添加 cookie
第一种HashMap<String, String> map = new HashMap<String, String>();map.put("cookie" ...
- java线程安全之并发Queue
关闭 原 java线程安全之并发Queue(十三) 2017年11月19日 23:40:23 小彬彬~ 阅读数:12092更多 所属专栏: 线程安全 版权声明:本文为博主原创文章,未经博主允许不 ...
- Kafka与常见消息队列的对比
Kafka与常见消息队列的对比 RabbitMQ Erlang编写 支持很多的协议:AMQP,XMPP, SMTP, STOMP 非常重量级,更适合于企业级的开发 发送给客户端时先在中心队列排队.对路 ...
- C#代码安装Windows服务
using System;using System.Collections.Generic;using System.ServiceProcess;using System.Configuration ...
- Spark机器学习(6):决策树算法
1. 决策树基本知识 决策树就是通过一系列规则对数据进行分类的一种算法,可以分为分类树和回归树两类,分类树处理离散变量的,回归树是处理连续变量. 样本一般都有很多个特征,有的特征对分类起很大的作用,有 ...
- PPTP 在Centos 7.1 建立方法与失效处理
# yum install pptp pptp-setup pptpsetup --create vpn --server (serverName) --username (Username) - ...
- libmongoc关于\$pullAll和\$addToSet的一个使用问题记录
问题描述及测试结果 在使用mongodb时,对一个document中的数组成员进行更新的时候,可以使用$pull $push $pop $addToSet $pullAll和$each $positi ...
- fiddler模拟发送get/post请求(也可做简单接口测试)
1.模拟发送请求 (1)fiddler设置post接口信息及参数,点击execute发送请求 (2)fiddler设置get接口信息及参数,点击execute发送请求 2.发送请 ...
- openssl命令行工具简介 - 指令x509
原文链接: http://blog.csdn.net/allwtg/article/details/4982507 openssl命令行工具简介 - 指令x509 用法: open ...