




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、java ee7和maven工程入门(2)-编程 开发技术java ee7 和 maven i程入门(2)木文由importnew陈显鹭翻译自javacodegeekso欢迎加入翻译小组。转载请见文末要 求。目录1. 一个简单maven工程的结构2. 建立一个简单的war工程先来回顾一下第一部分我们已经建立了父pom文件。这种特殊类型的文件用来定义我们项目即将使用的 类库,它也配置了所有为了打包项目的每个模块而使用的maven i具。你可以检 出第一部分代码。所以,宜到现在我们开发的项冃冃录中我们只有一个叫做scimple-peirent的文件 夹。而且在这个口录小包括pom. xml文件这就
2、是我们的父pom。在我们定义的modules部分屮可以看到,我们的项目由以下儿块组成: sample-ear sample-web sample-service sample-domain我们需要创建相关的maven模块并给每个模块增加对应的pom. xml文件。定义war模块我们在sample-parent文件夹下创建一个叫做sample-web的子文件夹,并且在 这个文件夹卜面添加一个pom. xml文件(一些人同时完成这两个步骤)。<project xmlns=,/http:/ni3ven apache. org/pom/4. 0. 0 xmlns:xsi二http:/www. w
3、3. org/2001/xmlschema-instance xsi: schemalocation=,/http:/maven, apache. org/pom/4. 0. 0 http:/maven. apache, org/xsd/maven-4. 0. 0. xsd><modelversion 0. 0/modelversion><parent><groupld>gr. javapapo</groupld><artifactld>sample-parent/artifactld><version>0.
4、0. 1-snapshot</version></parent><arti facttd>sample_web</arti facttd></projcct>但是这个没啥用。我们需要更加具休指出这个pom会帮助我们构建什么。因此我 们需要去定义打包类型,该模块的名称(也是war包的名称)和其他的一些依赖 项。<ar ti factld>saniple-web/artifac tld><packaging>war</packaging><build>finalname>$pro
5、ject. artifacttd</finalame></build>dependencies<dependency><grouptd>javax</grouptd><artifactid>javaccapi</artifoetid<scope>provided</scope>/dependency</dependencies></project>如果你使用支持maven的ide (比如eclipse),会门动发现pom内容的变化。同 时会自动为你创建文件夹,与你的ma
6、ven war包名一致。它会按照下而的结构创 建文件夹。你当然可以自己手动创建,借助工具还是很方便的。sample-web srco main java(在这里添加java代码) webapp(这里就是 web-infweb.xml 的位置) resources (资源,像配置文件)o test java在webapp子文件夹下我已经捉前创建好了 web-lnfweb xml文件。可以跳过这 个环节,因为maven插件可以帮我做这个工作。这里为了说明如果想要自己创建 或者应对其他一些需要自定义项的情况,如果你想知道在空的servlet 3. 1 web. xml文件里面坊点什么,请看看这甲.或
7、者 下载本文的代码。我已经在sample package下的java子文件夹下放了一个非常 简单的servleto这个将被包含到我们的项目中,只是很少的儿行代码。你可以 在本文末尾找到git (bitbucket)链接,下载木文所有代码。因此,仅仅在我们的war模块的pom文件中添加了很少几行代码。如果有ide, 这个工具会很神奇的帮我们创建一个非常详尽的文件布局。我们根据这个布局然 后添加一个非常简单的scrvlct java文件和很少的xml描述符。这才是真正的 意图所在。maven最爽的事情就是,war模块一些需要去构建的东西己经在这个特殊的父pom 文件里面被预先定义和配置好了。但是这
8、些东西是什么,maven将如何去使用它 们?正如我们已经描述了 maven的全部约定。通过正确的方法排列正确的事情, 然后它们就会为你完成所有的工作。当maven扫描这个war包的时候,它需要去做:编译我们的java servlet类打包sample-web文件夹下面的所冇东西变成一个wai文件和少许依赖项。既然我们没有添加一些特殊的东西在我们的war pom文件中(除了一个依赖库), 那谁为我们做的这些工作呢?那当然是这个配置和我们的父pom文件了(详情请 查阅上一篇文章)。这个maven-comp订er-plugin插件将被触发去编译我们的源文件。既然我们已经 定义了 maven模块的打包
9、是war方式,然后maven-war-plugin插件将被触发去 为我们打包一切东西,然后创建适当的注释。当我们的项目冇好几个war或者jar模块情况的时候,如果我们冇一个父pom, 并口我们已经为它定义了一个中央位置的插件和基本的配置,那么我们就没必要 去在其他的那些war或者jar模块重新定义他们。只有当其中的war或者jar模块需要特别对待的时候(例如,打包-些额外的东 西或者有一个特殊的文件设计布局)。那么在这个项目部分我们需耍重新定义插 件和重写或者添加一些其他的东西。但是这些不是我们目前的情况,我们希望我 们的插件只定义一次,而且有一个公共的配置被我们所有的将要使用的项目的其 他的模块继承。根据上面的线索,你可以实验和尝试创建我们上面己经定义过的 sample-services模块,或者等待文章的第三部分。现一个章节我们将快速的覆 盖其他的模块的配置。你可以在这里找到这篇文章对应的代码.资源第一篇 maven war文件夹布局 java ee 7xml 描述
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年 工业锅炉G1证理论考试练习题附答案
- 节能报告范文17汇编
- 税务师网盘课件下载指南
- 中国文化娱乐服务行业全景评估及投资规划建议报告
- 2025年中国消防火灾报警系统行业发展前景预测及投资战略咨询报告
- 中国体育场地与设施建设行业全景评估及投资规划建议报告
- 2025年变配电保护自动化项目投资分析及可行性报告
- 巴曲酶项目投资可行性研究分析报告(2024-2030版)
- 中国装潢设计行业投资研究分析及发展前景预测报告
- 移动应用开发合同
- 电梯维保培训
- 内审不符合项案例
- 在高中语文教学中如何融入中华民族共同体意识
- 柔性温度-压力传感器的设计与制备
- 2025年版中医(壮医)专业医师资格考试大纲
- 2025年安徽芜湖宜居投资集团招聘笔试参考题库含答案解析
- 2025年中国南方航空招聘笔试参考题库含答案解析
- 2024版北美留学咨询与申请一体化服务合同3篇
- 2025版国家开放大学法学本科《知识产权法》期末纸质考试总题库
- 建设项目全过程工程咨询-第二次形成性考核-国开(SC)-参考资料
- 头面部烧伤的护理
评论
0/150
提交评论