eclipse创建Maven项目

本文详细介绍了如何在Eclipse中利用Maven插件创建并配置Web项目,包括修改web.xml,配置pom.xml,添加目录及输出路径,配置项目部署程序集,以及将Maven项目转换为DynamicWebProject。

 进行以下步骤的前提是你已经安装好本地maven库和eclipse中的maven插件了(有的eclipse中已经集成了maven插件)

一、Maven项目的新建

1、鼠标右键---->New----->Other...

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIxNDIzMzMzNC03NzMyMzgxMjYucG5n)

2、直接点击下一步

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIxNDQ0MzkxMi0xOTYwOTY4MjMwLnBuZw)

3、选中 maven-archetype-webapp 后点击下一步

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIxNDY1OTc0MC0xOTg3NzQ2NjAwLnBuZw)

4、 Group Id 中输入项目的基本包名。

      Artifact Id 中输入项目名。

      Version 中的值默认就行,不进行选择。

      Package 中写的是默认生成的一个包名,不写也可以。

   接着点击完成就可以了。

 ![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIxNTAwMzc0MC01NDkxMTI0MjEucG5n)

5、创建好项目后结构如下:

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5MzEzOTI3MS0zMDcwODM5ODMucG5n)![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIyMDUzMTE3OC0xNjI3NTg5NDc2LnBuZw)

  ------web.xml 的版本是2.3的,是老版本

  ------新生成的工程默认的 jdk 和 compiler 都是1.5 的

  ------而且没有src/main/java 这样结构的 maven 目录

二、Maven项目的配置

1、修改web.xml

由于Maven中的 maven-archetype-webapp 样板项目的 web.xml 是2.3版本的,我们需要替换成新版本:

可以在Eclipse中新建一个web工程,将它 WebContent/WEB-INF 目录下的 web.xml 文件复制替换掉我们的 Maven 项目中 src/main/webapp/WEB-INF/ 目录下的web.xml 文件。

原来的web.xml内容

<web-app>
<display-name>Archetype Created Web Application</display-name>
</web-app>

替换后的web.xml内容

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" 
         id="WebApp_ID" version="3.1">
  <display-name>mydemo</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
</web-app>

2、pom.xml 里面build 标签下添加 maven编译插件

 3、添加缺少的目录并指定输出路径

Maven规定,必须创建以下几个包,并且分别对应相应的输出路径

  src/main/resources

  src/main/java

  src/test/resources

  src/test/java

右键项目----->BUild Path----->Configure Build Path...

(1)在Order and Export (这里是控制项目中包的显示顺序的)这个栏里会发现有几个目录显示missing(丢失),随便选中一个改变下顺序(Up 或者 Down 或者 Top 或者 Bottom),然后点击应用,OK,丢失的目录会在项目中显示出来,再次进到这个地方,红叉标识已经消失了。(这一步比较奇怪,可能是eclipse中maven插件的bug吧)

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIyMjI0NzgzNC0xNjM2MDc4MDkyLnBuZw)

(2)接着在Source里会发现已经有三个目录了,所以点击Add Folder... 添加缺少的目录(这里注意把Allow output folders for source folders 上,方便下一步进行输出路径的设置)

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5MzY0NzUyMS0xOTEyODM5MDk4LnBuZw)

点击Create New Folder... ,输入缺少的包名,直接点击完成,回到这个界面点击OK就行

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5NTA0NTgxOC0xNDM2OTUwOTYzLnBuZw)![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5NTU1NzA2OC0xMzAzNjQyNTk2LnBuZw)

(3)接着就会看到Source这里多了一个刚才添加的包,这个新加的包没有指定输出目录,需要进行修改

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5NTQ0NzAwNi05NjA5NDEwNjkucG5n)

在Source 里面设定4个文件夹的输出Output folder,双击进行修改

分别修改输出路径为

/src/main/resources  对应  target/classes

/src/main/java           对应  target/classes

/src/test/resources      对应  target/test-classes

/src/test/java             对应  target/test-classes

我这只需要修改第四个目录就可以了(前三个都默认设置好了,如果你的没设置好就设置一下)

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIyNDMxMzYwMC0xMzY0MDM5MDIwLnBuZw)

 最终的效果如下图所示:

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTEwMDYzMDcwOS0xOTMwMzI1OTA4LnBuZw)

此时的目录结构为:

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTEwMDcxMzYxNS00ODEzMzU1MTAucG5n)

可以看出已经是maven项目的结构了(这里有报错,报的是Cannot change version of project facet Dynamic Web Module to 3.1,先不管,最后再处理)

4、配置项目部署程序集(Web Deployment Assembly)

右键项目----->Properties----->Deployment Assembly

(1)删除test的两项,因为test是测试使用,并不需要部署。

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTAyMTI0NTgzNC0xMjc4NTIwODA3LnBuZw)

(2)添加Maven依赖,设置将Maven的jar包发布到lib下,如果已经有了就不需要添加了。 
    Add -----> Java Build Path Entries -----> Maven Dependencies -----> Finish

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIzNDYzMjAwNi03MTI3MDg0MDkucG5n)![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIzNDY1NDc4Ny05NTIwODU0MDYucG5n)

最终是这样的

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIzNDczNzQ3NS01MTc1NjQ2ODcucG5n)

三、将Maven项目转换成Dynamic Web Project

(1)右键项目----->Properties

在左侧选择 Project Facets,单击右侧的 Convert faceted from 

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIzMTUxNzgwMy0yMDUwMzI2OTk5LnBuZw)

刚进来时是这样的,需要把Dynamic Web Module (动态web模块)的版本修改为 3.1 (最新版),Java的版本修改为项目用的1.8

这里可能会报一个错误,在修改动态web模块版本的时候会提示Cannot change version of project facet Dynamic Web Module to 3.1

不要紧,只需要去掉动态web模块前面的对勾,点击OK,接着再进入这个界面就能够修改动态web模块的版本了。

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5MDQxNTA1My04NDQzNDkwNTEucG5n)

修改完成是这样的,接下来单击 Further Configuration available... (进一步可用的配置)链接

下面如果没有显示出 Further Configuration available... 的话,可以在Dynamic Web Module 前去掉打钩,点击应用,然后再填上钩,再点击应用,一般 Further Configuration available... 就会出现了。

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTA5MDYzMjgzNC0xMTczNTk3MjYucG5n)

修改 Content directory(内容目录) 的值 WebContent 为 src/main/webapp ,单击OK,然后回到上一步窗口直接点击OK

这里可能出现的问题是,会给你个提示目录错误的弹窗,不要紧,你可以检查下之前文件输出路径的设置是否有问题(Java Build Path -----> Source),修改过来应该就没问题了

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIzMjIwODgwMy03NzUxODk3NjMucG5n)

完成这一步之后你可以检查下你的Java Build Path 中的Libraries 中的jdk版本,还有Java Compiler (编译环境),发现都已经改为1.8版本了。

(2)接下来你项目中的pom.xml 可能报一个错 web.xml is missing and <failOnMissingWebXml> is set to true ,如果没报错,可以忽略不看

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxODIzMzExNzgzNC04MTY2NTgzNzAucG5n)

解决办法:

使用maven创建项目有时在pom.xml的war处出现failOnMissingWebXml的错误,根据pom.xml 可以知道这个项目是web项目,打包时打成war包。

错误提示的是丢失web.xml,所以如果项目里没有web.xml,则在项目里添加一个web.xml,刷新一下项目,就应该没有错误了。

如果还有错的话就需要在eclispe上方点击Project ----->Clean 清理一下这个项目了。

经过这两步错误就应该已经清除了。

(3)到这一步,web项目就创建完毕了,可以看一下你的项目结构,如果有什么build目录,WebContent 目录的话可以直接删除(确保你的输出目录之类的已经设置好了)

直接把页面资源放置在src/main/webapp/ 目录下,所以最终的项目结构如下所示:

![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9pbWFnZXMyMDE3LmNuYmxvZ3MuY29tL2Jsb2cvMTAwMTg4Ni8yMDE3MDgvMTAwMTg4Ni0yMDE3MDgxOTEwNDcxNDA2OC0xOTU5NTEyOTE5LnBuZw)

基本上清除未知错误的方法是:

1、右键项目----->Run As----->Maven clean

2、Project----->Clean...

3、右键项目----->Maven----->Update Project...

如果没效果,可以试着把pom.xml稍微修改下,比如加个空格之类的,再进行一次,应该就不报错了。(*^◎^*)

 

(本文转载自坚果核 https://www.cnblogs.com/wbyp/p/7392681.html

标题中提及的“BOE-B2-154-240-JD9851-Gamma2.2_190903.rar”标识了一款由京东方公司生产的液晶显示单元,属于B2产品线,物理规格为154毫米乘以240毫米,适配于JD9851型号设备,并采用Gamma2.2标准进行色彩校正,文档生成日期为2019年9月3日。该压缩文件内包含的代码资源主要涉及液晶模块的底层控制程序,采用C/C++语言编写,用于管理显示屏的基础运行功能。 液晶模块驱动作为嵌入式系统的核心软件组成部分,承担着直接操控显示硬件的任务,其关键作用在于通过寄存器读写机制来调整屏幕的各项视觉参数,包括亮度、对比度及色彩表现,同时负责屏幕的启动与关闭流程。在C/C++环境下开发此类驱动需掌握若干关键技术要素: 首先,硬件寄存器的访问依赖于输入输出操作,常借助内存映射技术实现,例如在Linux平台使用`mmap()`函数将寄存器地址映射至用户内存空间,进而通过指针进行直接操控。 其次,驱动需处理可能产生的中断信号,如帧缓冲区更新完成事件,因此需注册相应的中断服务例程以实时响应硬件事件。 第三,为确保多线程或进程环境下共享资源(如寄存器)的安全访问,必须引入互斥锁、信号量等同步机制来避免数据竞争。 第四,在基于设备树的嵌入式Linux系统中,驱动需依据设备树节点中定义的硬件配置信息完成初始化与参数设置。 第五,帧缓冲区的管理至关重要,驱动需维护该内存区域,保证图像数据准确写入并及时刷新至显示面板。 第六,为优化能耗,驱动应集成电源管理功能,通过寄存器控制实现屏幕的休眠与唤醒状态切换。 第七,针对不同显示设备支持的色彩格式差异,驱动可能需执行色彩空间转换运算以适配目标设备的色彩输出要求。 第八,驱动开发需熟悉液晶显示控制器与主处理器间的通信接口协议,如SPI、I2C或LVDS等串行或并行传输标准。 最后,完成代码编写后需进行系统化验证,包括基础显示功能测试、性能评估及异常处理能力检验,确保驱动稳定可靠。 该源代码集合为深入理解液晶显示控制原理及底层驱动开发实践提供了重要参考,通过剖析代码结构可掌握硬件驱动设计的具体方法与技术细节。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值