新检出项目,发现代码无故报错,各种尝试,最终发现是因为  项目右键中的 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属性设置解决项目无故报错的更多相关文章

  1. eclipse项目无故报错,markers信息为An error occurred while filtering resources

    eclipse项目无故报错,markers信息为An error occurred while filtering resources 描述:eclipse项目和resource文件上有红色的叉,其m ...

  2. Eclipse的Project Facets属性

    Project Facets 1. 'Project Facets'可理解为:项目的特性,主流 IDE (Eclipse IDEA) 都提供了 facet 的配置.  'Project Facets' ...

  3. 解决sweetalert 无故报错 elem.className.replace Uncaught TypeError: Cannot read property 'className' of null

    今天碰到这么一个问题,在使用sweetalert的时候时有时无会报错 elem.className.replace Uncaught TypeError: Cannot read property ' ...

  4. Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办法

    转: Eclipse中引入com.sun.image.codec.jpeg包报错的完美解决办法  更新时间:2018年02月14日 17:13:03   投稿:wdc   我要评论   Java开发中 ...

  5. eclipse 中导入 maven项目 启动报错

    导入Maven项目到Eclipse中时,出现问题如下: java.lang.ClassNotFoundException: org.springframework.web.context.Contex ...

  6. 解决Maven项目中的无故报错的方法

    解决Eclipse+maven中的无故报错 错误: One or more constraints have not been satisfied. Deployment Assembly跟java版 ...

  7. 如何自定义JSTL标签与SpringMVC 标签的属性中套JSTL标签报错的解决方法

    如何自定义JSTL标签 1.创建一个类,从SimpleTagSupport继承 A) 通过继承可以获得当前JSP页面上的对象,如JspContext I) 实际上可以强转为PageContext II ...

  8. 已解决: idea创建并部署SpringMVC项目时 报错 java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    用IDEA创建并运行SpringMVC项目时,最初发现没有Servlet包,这个问题已在上篇解决,然而当我们尝试去运行此时的SpringMVC项目时,发现仍然有错误.ClassNotFoundExce ...

  9. Eclipse 新建.jsp页面后,页面头部标签报错的解决方法

    Eclipse 新建.jsp页面后,页面头部标签报错的解决方法 1.报错地方: 2.解决方法: .jsp页面右键==>BUild Path ==>Configure Build Path. ...

随机推荐

  1. openjudge-2的100次方阶乘

    开始进行的第一天 #include <stdio.h> #include <string.h> int main() { int n; scanf("%d" ...

  2. ionic 提示框

    html文件 <ion-header> <ion-navbar> <ion-title>Toast</ion-title> </ion-navba ...

  3. 《机器学习实战》笔记——决策树(ID3)

    现在要介绍的是ID3决策树算法,只适用于标称型数据,不适用于数值型数据. 决策树学习算法最大的优点是,他可以自学习,在学习过程中,不需要使用者了解过多的背景知识.领域知识,只需要对训练实例进行较好的标 ...

  4. docker最佳实践-----美团点评的分享

    美团点评容器平台简介 本文介绍美团点评的Docker容器集群管理平台(以下简称“容器平台”).该平台始于2015年,是基于美团云的基础架构和组件而开发的Docker容器集群管理平台.目前该平台为美团点 ...

  5. 【转】jQuery最佳实践

    上周,我整理了<jQuery设计思想>. 那篇文章是一篇入门教程,从设计思想的角度,讲解"怎么使用jQuery".今天的文章则是更进一步,讲解"如何用好jQu ...

  6. 软件功能-东北师大站-第三次作业(PSP)

    1.本周PSP 2.本周进度条 3.本周累计进度图 代码累计折线图 博文字数累计折线图 本周PSP饼状图

  7. c# word 删除指定内容

    1.首先简单的是获取得到的range,直接rangge.delete() 2.文本框的删除: foreach (Microsoft.Office.Interop.Word.Shape shape in ...

  8. eg_2

    2. 编写一个程序,输出在一个字符串中,指定的字符串出现的次数 第一种方法: public class Test { public static void main(String[] args) { ...

  9. iOS- 网络访问JSON数据类型与XML数据类型的实现思路及它们之间的区别

    1.JSON (基本上移动开发的主要数据传输都是JSON) 1.1.JSON特点: a.[] 表示数组 b.{} 表示字典 - 对象模型建立关系 c.应用非常多,基本上移动开发的主要数据传输都是JSO ...

  10. Swift中避免在多个文件中重复import相同的第三方包

    swift中由于有命名空间的存在,在同一个target创建的文件,都可以不引用直接就可以拿来使用,但是不同target之间必须要import 之后才能使用,在不同的文件中使用都要重复的import这个 ...