Eclipse的Project Facets属性设置解决项目无故报错
新检出项目,发现代码无故报错,各种尝试,最终发现是因为 项目右键中的 project Facets 属性中的 java 后面的 version 版本和项目 build path 的 jdk 版本不一致,这个在检出项目后经常会自动出现不一致的情况。
将其改成一致的就可以了。

另外可以参考下面文章:
原文:https://www.cnblogs.com/zj0208/p/6306377.html
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项目无故报错,markers信息为An error occurred while filtering resources
eclipse项目无故报错,markers信息为An error occurred while filtering resources 描述:eclipse项目和resource文件上有红色的叉,其m ...
- Eclipse的Project Facets属性
Project Facets 1. 'Project Facets'可理解为:项目的特性,主流 IDE (Eclipse IDEA) 都提供了 facet 的配置. 'Project Facets' ...
- 解决sweetalert 无故报错 elem.className.replace Uncaught TypeError: Cannot read property 'className' of null
今天碰到这么一个问题,在使用sweetalert的时候时有时无会报错 elem.className.replace Uncaught TypeError: Cannot read property ' ...
- Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办法
转: Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办法 更新时间:2018年02月14日 17:13:03 投稿:wdc 我要评论 Java开发中 ...
- eclipse 中导入 maven项目 启动报错
导入Maven项目到Eclipse中时,出现问题如下: java.lang.ClassNotFoundException: org.springframework.web.context.Contex ...
- 解决Maven项目中的无故报错的方法
解决Eclipse+maven中的无故报错 错误: One or more constraints have not been satisfied. Deployment Assembly跟java版 ...
- 如何自定义JSTL标签与SpringMVC 标签的属性中套JSTL标签报错的解决方法
如何自定义JSTL标签 1.创建一个类,从SimpleTagSupport继承 A) 通过继承可以获得当前JSP页面上的对象,如JspContext I) 实际上可以强转为PageContext II ...
- 已解决: idea创建并部署SpringMVC项目时 报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
用IDEA创建并运行SpringMVC项目时,最初发现没有Servlet包,这个问题已在上篇解决,然而当我们尝试去运行此时的SpringMVC项目时,发现仍然有错误.ClassNotFoundExce ...
- Eclipse 新建.jsp页面后,页面头部标签报错的解决方法
Eclipse 新建.jsp页面后,页面头部标签报错的解决方法 1.报错地方: 2.解决方法: .jsp页面右键==>BUild Path ==>Configure Build Path. ...
随机推荐
- 爬虫——URL模块爬取糗事百科段子
最简单的爬取网页找有用信息,难点应该是正则锁定有用信息部分,看了一些其他大神的正则,最后还是决定按照自己理解写一个,果然我头脑相对简单,写出来的粗糙而易理解,也完成了自己想要的需求,就这样了~ # - ...
- ortp打印日志
//向字符串中打印数据 static char* ms_strdup_vprintf(const char *fmt, va_list ap) { ; char *p,*np; #ifndef WIN ...
- Soliworks 2016建模细节总结(1)
Soliworks 2016建模小细节总结(1) 1.Solidworks 2016三维建模的时候,如果想要在一个视图里面呈现出四个视图(包括三个独立的视图以及三维结构的实体模型图),可以直接按鼠标会 ...
- 初学DirectX(1)
初学Direct X (1) Direct3D设备用于访问视频卡的帧缓冲区,以及后台缓冲区.由于IDE是vs2013,默认安装了direct 9,只需要在使用头文件(1)并像使用库文件(2)即可 #i ...
- 《Effective C++》读书笔记 资源管理
C++程序中最常用的资源包括动态分配的内存,文件描述器,互斥锁,数据库连接,网络socket等等.不论哪种资源,重要的是,当你不再使用他时,必须将他归还给系统. 一个很好的做法是以对象管理资源.把资源 ...
- IntelliJ IDEA 2017.3/2018.1/.2 激活
传统的License Server方式已经无法注册IntelliJ IDEA2017.3的版本了. http://idea.lanyus.com,这个网站有破解补丁和注册码两种方式,另外http:// ...
- UBUNTU如何安装tar.gz版的flash
adobe flash player的官方下载页面为:https://get.adobe.com/cn/flashplayer/ 不过近期通过APT方式以及ubuntu的软件中心都安装不了flashp ...
- 【MVC4升级到MVC5】ASP.Net MVC 4项目升级MVC 5的方法
1.备份你的项目 2.从Web API升级到Web API 2,修改global.asax,将 ? 1 WebApiConfig.Register(GlobalConfiguration.Config ...
- Swagger Authorization:bearer <token>
1.添加如下代码 /** * * @SWG\SecurityScheme( * securityDefinition="Bearer", * type="apiKey&q ...
- tomcat web页面管理应用配置
大部分时候,我们的tomcat服务器都不是部署在本机,那么怎么样不通过ftp/sftp方式来将war包部署到tomcat容器呢? tomcat有提供web页面管理应用的功能. 我们来看看怎么配置实现该 ...