整理这几天搭建web项目更新的maven知识及项目配置

一、maven基本知识

1、groupid、artifactId、version

用eclipse ee创建web项目时需要输入groupid、artifactId、version,它们是什么呢?        groupId:组织标识,例如com.baobaotao.ide,在本地仓库下将是com/baobaotao/ide。        artifactId: 项目名称,例如shop,在本地仓库目录下将是com/baobaotao/ide/shop。        version:版本号,例如1.0,在本地仓库目录下将是com/baobaotao/ide/shop/1.0

对于pom文件中的第三方jar包依赖,如:

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-core</artifactId>

<version>3.2.14.RELEASE</version>

</dependency>

在远程仓库中必然有一个org/springframework/spring-core/3.2.14.RELEASE目录。

2、pom文件

a. <parent>标签用于定义父pom文件,例如:

<parent>

<groupId>父模块组织标识</groupId>

<artifactId>父模块项目名称</artifactId>

<relativePath>模块POM的相对路径,默认为 ../pom.xml</relativePath>

<version>版本</version>

</parent>

子模块可继承父模块pom配置。子模块继承这些配置的时候,仍然要声明groupId和artifactId,表示当前配置是继承于父POM的,从而直接使用父POM的版本对应的资源,例如:

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-webmvc</artifactId>

</dependency>

不写version表示使用父模块pom配置的spring-webmvc,这个功能可以有效的避免多个子模块使用依赖版本不一致的情况,有助于降低依赖冲突的几率。细节参考:http://blog.csdn.net/wanghantong/article/details/36427411

b. pom或者父模块pom配置里定义个版本号,可以使用${}语法取值,例如:

定义了<junit.version>4.11</junit.version>后可以如下配置version

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>${junit.version}</version>

<scope>test</scope>

</dependency>

3.修改配置文件自定义本地仓库路径和访问的远程仓库url

maven安装目录conf文件夹下settings.xml文件记录了maven配置信息。 <localRepository>设置本地仓库位置,<mirror>设置远程仓库url。

4. 配置编译插件,防止update project后jar变为1.5

<build>

<plugins>

<plugin>

<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-plugin</artifactId>

<version>3.1</version>

<configuration>

<source>1.7</source>

<target>1.7</target>

</configuration>

</plugin>

</plugins>

</build>

这是Maven已知的一个特性。除非在你的POM文件中显示的指定一个编译插件版本,否则会使用编译器默认的source/target版本1.5

5.maven web项目目录结构

src/main/java  项目源代码目录

src/main/resources  项目所需资源目录

src/main/webapp  web应用目录包含WEB-INF,将这个目录部署到服务器

src/test/java  测试代码目录

src/test/resources  测试所需资源目录

target  默认输出目录,存放项目.class文件和打包文件

pom.xml

6.常用maven指令

mvn archetype:create :创建 Maven 项目

mvn compile :编译源代码

mvn test-compile :编译测试代码

mvn test : 运行应用程序中的单元测试

mvn site : 生成项目相关信息的网站

mvn clean :清除目标目录中的生成结果

mvn package : 依据项目生成 jar、war…… 文件

mvn install :在本地仓库中安装 jar

mvn eclipse:eclipse :生成 Eclipse 项目文件

mvn -Dmaven.test.skip=true : 忽略测试文档编译

7.依赖查找网站

http://www.mvnrepository.com  这个网站极好

二、eclipse中project facets、java build path、deployment assembly配置

1、dynamic web module

project facets下的dynamic web module配置web应用版本,勾选它后出现弹窗可以配置web应用目录,如果遇到勾选后没有弹窗的情况,可以先不勾选点击应用后再勾选即可。注意:修改web应用版本后需要修改对应的web.xml文件。以下是不同web版本下的web.xml配置:

web 2.3

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

</web-app>

web 2.4

<?xml version="1.0" encoding="UTF-8"?>

<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

</web-app>

web 2.5

<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

version="2.5">

</web-app>

web 3.0

<?xml version="1.0" encoding="UTF-8"?>

<web-app

version="3.0"

xmlns="http://java.sun.com/xml/ns/javaee"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

</web-app>

2、java build path

创建项目各种目录,配置目录的输出文件夹,以及默认输出文件夹,修改jre环境,添加删除依赖jar包、library

3、deployment assembly

用于配置项目部署资源,通常这样配置:

时间: 2024-10-09 11:22:53

整理这几天搭建web项目更新的maven知识及项目配置的相关文章

Maven项目搭建(三):Maven直接部署项目

    上一章给大家讲解了如何使用Maven搭建SSM框架项目.   这次给大家介绍一下怎么使用Maven直接部署项目.   Maven直接部署项目  1.新建系统变量CATALINA_HOME,值为:Tomcat路径  2.在系统变量 Path的最后面添加%CATALINA_HOME%\lib; %CATALINA_HOME%\lib\servlet-api.jar;%CATALINA_HOME%\lib\jsp-api.jar ,注意它们之间的分号,一定是英文的分号.   3. Tomcat

使用Docker如何搭建Web漏洞测试环境?

本文和大家分享的是使用Docker搭建Web漏洞测试环境相关知识,希望对大家学习Docker有所帮助,一起来看看吧. 由于一直在做 Web 漏洞扫描器的开发, 那么就必然少不了 Web 的漏洞测试环境, 其中就包括 bWAPP.DVWA.OWASP WebGoat 等这些国际品牌. 这些漏洞环境一般搭建比较繁琐, 而且出问题后有不能像 git 那样方便的'回滚'操作, 当然你可以使用 esxi 来管理, 不过虚拟机仍然会存在定期快照.回滚操作较长等繁重操作. 那有没有轻量级的能够快速搭建 Web

利用Jenkins实现jdk11+Maven构建springboot项目

目录 原理图 前期准备 Jdk11安装 Jenkins安装 Maven安装 Jenkins的设置 插件安装 变量配置 搭建项目 1.通用配置 2.源码管理 3.构建触发 4.Maven的构建选项 5.构建后操作 原理图 鉴于网上很多资料一上来直接就开干了,这里我先把这几天所经历的理解化成一张图,以便后续内容更加容易理解. 由上图可以清晰的看到,只要我们再本地的Idea提交代码到GitHub远程仓库,随后Github触发一个web hook(简单来说就是一个Http请求).随后Jenkins接收到

maven创建webapp项目

一.Eclipse配置 1.eclipse集成用户自己安装的jdk 2.eclipse集成用户自己安装的maven 3.eclipse集成用户自己安装的tomcat 4.去掉spell 5.修改字体 小四 二.maven创建webapp项目 new-->other-->maven project->use default workspace location(选择工作目录即可,不必命名项目文件夹)--> maven-archetype-webapp-->定义artifactI

一:Maven知识整理

一:maven的好处 1.依赖管理:对jar包的统一管理 可以节省空间 2.项目一键构建: 编码 编译 测试(junit) 运行 打包 部署 一个 tomcat:run就能把项目运行起来 Maven能干的事: 编译 测试(junit) 运行 打包 部署 3.可以跨平台 4.应用于大型项目 可以提高开发效率 互联网项目:按业务分 传统项目:按层次分 pojo dao service web 二:maven仓库 三种仓库 1.本地仓库 自己维护 本地仓库的配置只需要修改settings.xml文件就

转:如何将 Java 项目转换成 Maven 项目

如何将 Java 项目转换成 Maven 项目 本文内容 Java 项目 Maven 项目 Java 项目转换成 Maven 项目 本文主要介绍如何将 Java 项目转换成 Maven 项目.首先要明确的是,用 Maven 管理 Java 项目的确方便.它带给你直观的方便是:你不用在网上找 Jar 包,然后把它复制到 lib 目录,再在项目中引用它.而只需向 pom.xml 写入你需要的 Jar 包依赖,Maven 就能自动从本地仓库或远程仓库下载,并引用-- 如何将一般的 Java 项目转换成

maven工程根项目运行ok但是子项目就报错的解决办法

正常启动没错 项目出现问题 maven工程根项目运行ok但是子项目就报错 报错信息是xxxx没有创建 解决办法 原来是子项目的依赖少了  没有配置1.8  所以会出现莫明其妙的bug 原文地址:https://www.cnblogs.com/july7/p/11964410.html

如何使用maven搭建web项目

博客园注册了有二十多天了,还没有写过博客,今天就发一篇,也便于后面查找笔记. 我个人已经做了几年的java web开发了,由于所在的公司是业务型公司,用的都是一些老旧的稳定技术,很少接触到稍微新点的内容, 经过几年的不进则退,自己的技术能力已经开始慢慢的被时代潮流淘汰.为了在大浪淘沙中能生存下来,自己要好好加油,从基本内容开始,稳步沉淀,更新自己的技术库. 不求一口吃个大胖子,只求每天进步一点点. 废话不多说,言归正传.如何使用maven搭建web项目呢? 第一步:首先创建一个maven项目 创

使用Koa2搭建web项目

随着Node.js的日益火热,各种框架开始层出不穷的涌现出来,Node.js也开始逐渐的被应用到处理服务端请求的场景中.搭建Web项目的框架也随之开始出现--express.koa.koa2.egg等,当然要了解其好坏还是要自己去啃源码的.本文将不会涉及到源码,只是带领初学者简单了解下Koa2的基本使用,欢迎大家在评论中互相交流学习. 注意:koa2使用了ES7的语法,所以使用时请升级Node版本到最新. 了解更详细的源码信息可以到git上的koajs/koa去了解. 1.项目目录结构 2. 代