为了账号安全,请及时绑定邮箱和手机立即绑定

项目管理利器——maven

难度初级
时长 2小时 1分
学习人数
综合评分9.60
486人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.4 逻辑清晰
  • 常用构建命令: mvn compile 编译 test 测试 package 打包 clean 删除target install 安装jar包到本地仓库 自动创建目录骨架: 1.archetype:generate 按照提示进行 2.archetype:generate -DgroupId=组织名, 公司网址的反写+项目名 -DartifactId=项目名-模块名 -Dversion=版本号 -Dpackage=代码所存在的包 Maven中的坐标与仓库: "构件" 通过 "坐标" 作为其唯一的标识 "仓库": 本地仓库和远程仓库 "镜像仓库" "更改仓库位置" Maven的生命周期和插件 完整的项目构建过程包括: 清理, 编译,测试, 打包, 集成测试, 验证, 部署 Maven生命周期: clean 清理项目 default 构建项目(最核心) site 生成项目站点 pom.xml用于管理项目依赖和构建过程 依赖范围 依赖传递 依赖冲突 1. 短路优先 2. 先声明先优先 聚合和继承
    查看全部
    0 采集 收起 来源:课程总结

    2018-03-22

  • 扩展--Tomcat作为Web容器,需要在Tomcat的官网上下载一个Tomcat的Maven插件 在tomcat官网找到Maven Plugin的坐标配置到到pom.xml中 例如: <build> <finalName>webbproject-demo</finalName> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <executions> <execution> <!-- 在打包成功后来运行tomcat服务 --> <phase>package</phase> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
    查看全部
  • 9:使用package命令打包项目——使用了jetty这个插件(在Maven的中央插件库中寻找)作为Web容器 在中央仓库查找jetty的plugin坐标配置到pom.xml中 pom.xml例子: <build> <finalName>webbproject-demo</finalName> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>2.1.1</version> <executions> <execution> <!-- 在打包成功后使用jetty:run来运行jetty服务 --> <phase>package</phase> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
    查看全部
  • 创建WEB项目 1:打开Eclipse,创建Maven项目,选择archetype-webapp模板<br> 2:在pom.xml中添加servlet的依赖,设置依赖范围为provided(在编译测试时有效),否则jsp页面会报错<br> <dependency><br> <groupId>javax.servlet</groupId><br> <artifactId>javax.servlet-api</artifactId><br> <version>4.0.0-b01</version><br> <scope>provided</scope><br> </dependency><br> 3:在项目的Project Explorer视图下Java Resources下创建Source Folder类型的文件 分别为:src/main/java和src/test/java<br> 4:检查classes文件的输出路径,项目右键-》Build Path-》Configure Build Path-》Source检查之前创建的两个文件的Output folder:xxx/target/classes<br> 5:将Maven项目转换为Web项目,项目右键-》属性-》Project Facets,选上Dynamic Web Module<br> 6:修改部署时的默认配置,项目右键-》属性-》Deployment Assembly移除测试文件<br> <br> 至此:web项目创建成功
    查看全部
  • Maven 配置web项目 1:打开Eclipse 2:创建Maven项目,选择archetype-webapp模板 3:解决Servlet没有生命依赖的问题,在pom.xml中添加servlet的依赖,可以去中央仓库选择servlet版本 例如: <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.0-b01</version> </dependency> 4:手工完善Maven约定好的目录结构 可以在navigator窗口中手动新建 ../src/main/java ../src/test/java 5:Project Explorer中更新项目 6:创建项目的输出目录 build path中设置输出路径output folder,确保每个module都输出在../tartet/classes目录中 7:将Maven项目转换为Web项目 右击-属性-project facets-勾选动态模板(Dynamic Web Module) 8:修改部署时配置去掉多余的配置项例如:测试代码 右击-属性-Deployment Assembly-删除多余的配置项(测试代码) 9:使用package命令打包项目—使用jetty这个插件(在Maven的中央插件库中寻找)作为Web容器,在中央仓库查找jetty的plugin坐标配置到pom.xml中 pom.xml例子: <build> <finalName>webbproject-demo</finalName> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <version>2.2</version> <executions> <execution> <phase>package</phase> <goals> <goal>run</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
    查看全部
  • 项目管理利器(Maven)——继承 继承:多次使用到的依赖,比如:单元测试,没有必要在所有的项目中都引用一下,此时就可以采用继承的方式来实现,先来一个父级的POM.XML然后再继承此POM.XML。 注意: 1. packaging 改为pom。 2. dependencyManagement 中并不提取依赖。 3. property中定义了unit版本号,之后可以引用。 4. 父类parent中的main和test没有意义,可以删除。 项目管理利器(Maven)——聚合 1.聚合:如果项目D依赖项目C,项目C依赖项目B,项目B依赖项目A,我们需要一个个安装这项项目,在Maven中有一种方式可以将多个项目一次性安装,这就是聚合的概念。简单讲就是,需要人工多次操作的,只要MAVEN能理解,一次性告诉他,他就能帮我们做这件单调烦人的事情了。——使用<modules></modules>这个标签。 2.继承:多次使用到的依赖,比如:单元测试,没有必要在所有的项目中都引用一下,此时就可以采用继承的方式来实现,先来一个父级的POM.XML然后再继承此POM.XML 如图中version可以用类似EL表达式的写法,将其在属性中定义,另外父类不必写方法,可以将文件删除掉
    查看全部
  • 聚合:如果项目D依赖项目c。项目c依赖项目B 项目B依赖项目A 我们需要一个个安装这项项目,在Maven中有一种方式可以将多个项目一次性安装,这就是聚合的概念,简单讲就是,需要人工多次操作的,重要Maven能理解,一次性告诉他,他就能帮我们做这些单调烦人的事情了,---使用<modules></modules>这个标签 继承:多次使用到的依赖,比如:单元测试,没有必要在所有的项目中都引用一下,此时就可以采用继承的方式来实现,先来一个父类的POM.XML然后在继承此POM.XML 注意: 1.packaging改为pom 2 dependencyManagement中并不提取依赖 3.property中定义了unit版本号,之后可以引用 4 父类parent中的main和test没有意义,可以删除
    查看全部
  • mvn archetype:generate -D
    查看全部
  • 项目管理利器(Maven)——依赖冲突<br> 如果C和D依赖了一个不同版本的相同的构件C。<br> ①:短路优先:<br> 会优先解析路径短的版本(D)。<br> A -> B -> C -> X(jar)<br> A -> D -> X(jar) 优先解析短的(两个X(jar)版本不同) ②:先声明先优先:A->C->jar,A->D->jar<br> 如果路径长度相同,则谁先声明,先解析谁(C)。 依赖冲突 不同版本的构件 1.短路优先 2.先声明先优先 如果路径长度相同,则谁先声明,先解析谁
    查看全部
    0 采集 收起 来源:maven依赖冲突

    2018-03-22

  • 先声明先优先
    查看全部
    0 采集 收起 来源:maven依赖冲突

    2016-11-27

  • maven基础知识:短路优先
    查看全部
    0 采集 收起 来源:maven依赖冲突

    2016-11-27

  • 项目管理利器(Maven)——排除依赖 假设B项目依赖A项目,C项目又依赖B项目,那么在C项目中运行compile时,在引进B项目的同时,自动就把A项目也引进来了。如果不想将A项目导入的话,可以使用exclusions下设置exclusion,然后将A项目的坐标添加即可将A项目排除在Maven Dependeccies之外。 修改maven默认jre版本,在setting.xml中更改 <profile> <id>jdk-1.7</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion> </properties> </profile> A依赖B,B依赖C,那么A也依赖C。如果要A不依赖C,则要用exclusions标签来排除依赖。
    查看全部
    0 采集 收起 来源:maven依赖传递

    2018-03-22

  • 项目管理利器(Maven)——依赖传递 假设B项目依赖A项目,C项目又依赖B项目,那么在C项目中运行compile时,在引进B项目的同时,自动就把A项目也引进来了。如果不想将A项目导入的话,可以使用exclusions下设置exclusion,然后将A项目的坐标添加即可。 Ps:可以在settings.xml中的profile结点,来更改默认的Maven使用的jdk版本,否则将显示默认的1.5版本。 <profile> <id>jdk-1.7</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion> </properties> </profile>
    查看全部
    0 采集 收起 来源:maven依赖传递

    2018-03-22

  • pom.xml 字段的意义
    查看全部
  • mvn -v 查看maven的版本
    查看全部

举报

0/150
提交
取消
课程须知
学习本门课程前需要具备Java基础和Java Web基础!
老师告诉你能学到什么?
1、maven的基本概念 2、如何快速使用maven来构建项目 3、maven中的核心概念 4、使用maven构建web项目以及如何集成tomcat、jetty插件

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!