`

项目中使用maven

阅读更多
3. 项目中使用maven

Maven 远程仓库配置文件: 
    $M2_HOME/lib/maven-model-builder-3.3.3.jar 文件:
    org\apache\maven\model\pom-4.0.0.xml 
    <repositories> 
    <repository> 
    <id>central</id> 
    <name>Central Repository</name> 
    <url>https://repo.maven.apache.org/maven2</url> 
    <layout>default</layout> 
    <snapshots>
    <enabled>false</enabled> 
    </snapshots> 
    </repository> 
    </repositories>

user-service依赖user-dao
1. user-dao右键run as --> Maven install
2. user-service中pom.xml根据user-dao的pom.xml的信息依赖导入
user-dao的pom.xml的信息
  <groupId>com.andrew.user</groupId>
  <artifactId>user-dao</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>
user-service的pom.xml导入依赖
  <dependency>
    <groupId>com.andrew.user</groupId>
    <artifactId>user-dao</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </dependency>

新建maven web项目
1. Maven --> Maven Project
2. maven-archetype-webapp 1.0
3. 信息
Group Id: com.andrew.user-service
Artifact Id: user-web
Version: 0.0.1-SNAPSHOT
Package: com.andrew.controller


新建maven项目
1. Maven --> Maven Project
2. create a simple project
3. 信息
Group Id: com.andrew.user
Artifact Id: user-aggregator
Version: 0.0.1-SNAPSHOT
Package: pom
其中
<modules>
    <module>../user-dao</module>
    <module>../user-service</module>
</modules>

user-parent的pom.xml
<groupId>com.andrew.user</groupId>
<artifactId>user-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
    <module>../user-dao</module>
    <module>../user-service</module>
</modules>

user-dao的pom.xml引入parent
原来的pom.xml
<groupId>com.andrew.user</groupId>
<artifactId>user-dao</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
现在的pom.xml
<parent>
    <groupId>com.andrew.user</groupId>
    <artifactId>user-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <relativePath>../user-parent/pom.xml</relativePath>
</parent>    
<artifactId>user-dao</artifactId>
<packaging>jar</packaging>

user-service的pom.xml引入parent
原来的pom.xml
<groupId>com.andrew.user</groupId>
<artifactId>user-service</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
现在的pom.xml
<parent>
      <groupId>com.andrew.user</groupId>
    <artifactId>user-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <relativePath>../user-parent/pom.xml</relativePath>
  </parent>    
<artifactId>user-service</artifactId>
<packaging>jar</packaging>

使用pom统一管理jar版本
<dependencyManagement>
<dependencies>
    <dependency>
        <groupId>org.mybatis</groupId>
        <artifactId>mybatis</artifactId>
        <version>3.3.0</version>
    </dependency>
</dependencies>
</dependencyManagement>

使用pom统一管理jar版本,同时抽取版本号统一管理
<properties>
    <spring.version>4.1.7.RELEASE</spring.version>
    <junit.version>4.12</junit.version>
    <log4j.version>1.2.17</log4j.version>
</properties>

<dependencyManagement>
 <dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
          <artifactId>spring-core</artifactId>
          <version>${spring.version}</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>${log4j.version}</version>
    </dependency>
</dependencies>
</dependencyManagement>

通过scope控制本地运行,测试,打包时候的jar包依赖权限
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <scope>provided</scope>
</dependency>
<scope>provided</scope>打包时不会打包,运行时调用tomcat自己的servlet jar包

注:
maven依赖范围
classpath分为三种:编译classpath、测试classpath、运行classpath
scope选项:
Compile编译依赖范围:默认就是compile,在编译,测试,运行都有效;
Test:测试依赖范围,仅测试有效:例如:JUnit;
Provided:已提供依赖范围。编译,测试有效,运行时无效。例如:servlet-api;
System:系统依赖范围。(了解即可)使用system范围的依赖必须通过systemPath指定依赖文件的路径。
Import:导入依赖范围。(了解即可)使用dependencyManagement时候,可以导入依赖配置。
分享到:
评论

相关推荐

    使用Maven构建多模块项目

    Maven作为Java领域广泛使用的构建工具,提供了强大的支持来管理多模块项目。本文将深入探讨如何利用Maven构建多模块项目,以及在实际操作中需要注意的关键点。 1. Maven多模块项目结构: Maven多模块项目通常遵循...

    idea使用maven创建web项目详细教程

    Maven 依赖管理是通过 pom.xml 文件来管理的,例如可以在 pom.xml 文件中添加依赖关系,以便在项目中使用相应的库。 9. Maven 项目结构 Maven 项目结构主要包括 src/main/java、src/main/resources、src/test/java...

    基于maven创建web项目

    在本文中,我们将基于maven创建一个web项目,首先我们需要搭建maven环境,包括安装Myeclipse2013、Tomcat8.0、Jdk1.8和apache-maven-3.3.9。然后,我们需要配置jdk和maven的环境变量,包括设置JAVA_HOME和MAVEN_HOME...

    springboot(web项目,非maven)

    标题中的“springboot(web项目,非maven)”指的是一个基于Spring Boot框架构建的Web应用程序,但它不是使用Maven作为构建工具。Spring Boot简化了Java Web应用的开发过程,提供了快速构建可运行的应用程序的方式,而...

    使用Maven导入Maven工程的视频教程

    使用Maven导入Maven工程的视频教程 仅供学习交流! 后续会持续分享相关资源,记得关注哦! 使用Maven导入Maven工程的视频教程 使用Maven导入Maven工程的视频教程 使用Maven导入Maven工程的视频教程 使用Maven导入...

    自己电脑maven设置

    在 Eclipse 中,需要配置 Maven 的用户设置,以便在项目中使用 Maven。首先,需要在 Eclipse 中打开 Window --&gt; Preferences --&gt; Maven --&gt; User Settings,然后点击 Update Settings,并点击 Apply 以保存设置。...

    SpringBoot项目使用maven配置文件

    SpringBoot项目使用maven配置文件是Java后端开发中的常见实践,它可以帮助开发者高效地管理依赖、构建项目以及执行自动化任务。Maven是Apache软件基金会的一个项目,它提供了一个项目对象模型(Project Object Model...

    Maven在eclipse中的项目启动命令

    在Eclipse中使用Maven进行项目管理和构建时,了解这些基本概念和命令是非常重要的。它们不仅能够帮助开发者高效地构建和部署项目,还能有效避免一些常见的问题。通过正确设置Maven配置以及合理使用这些命令,可以极...

    使用Idea14.1.4和maven创建java web项目

    在本篇文章中,我们将详细介绍如何使用IntelliJ IDEA 14.1.4版本结合Maven来创建一个Java Web项目。这种方法不仅能够提高开发效率,还能确保项目的结构更加规范。以下是详细的步骤和需要注意的关键点。 #### 二、...

    maven项目开发的maven3.3.9使用包

    在SpringBoot项目中,Maven 3.3.9 能够有效地帮助开发者管理和组织项目的构建过程。 ### Maven 的核心概念 1. **项目对象模型(Project Object Model,POM)**:Maven 项目的核心是POM,这是一个XML文件,包含了...

    maven安装包apache-maven-3.3.9.zip

    在项目中使用Maven时,开发者创建一个名为`pom.xml`的文件,该文件定义了项目的依赖、构建目标、插件和其他元数据。Maven通过读取`pom.xml`来管理项目的构建过程,自动下载所需的依赖库,并执行编译、测试、打包、...

    maven项目转换WEB项目

    如果你不熟悉Maven,但想要在Eclipse中使用一个基于Maven的Web项目,可以遵循以下步骤: 1. **导入Maven项目到Eclipse**:在Eclipse中选择“File” &gt; “Import” &gt; “Maven” &gt; “Existing Maven Projects”,然后...

    maven+nexus学习帮助

    5. **Maven实战**:这部分内容可能包含了一些实际项目中使用Maven的技巧和最佳实践,如多模块项目配置、自定义插件、复杂依赖管理和故障排查等。了解这些实战经验有助于你在实际工作中更高效地运用Maven。 通过学习...

    1.1.maven简介.mp4

    本系列课程从maven基础到高级,老师手把手教你搭建企业私服,熟练在项目中使用maven,课程体系完整清晰。 1.maven入门 1.1.maven简介 1.2.maven的作用 1.3.maven的安装 2.项目案例 2.1.构建项目 2.2.项目拆分 3....

    java视频教程之SVN Maven搭建自动化构建教程 Eclipse中使用Maven

    java视频教程之SVN Maven搭建自动化构建教程 Eclipse中使用Maven视频教程云盘下载链接

    在eclipse中使用maven(1).zip

    在Eclipse中使用Maven是Java开发者日常工作中的一项重要技能,Maven是一个强大的项目管理和构建工具,它简化了项目的依赖管理、构建流程以及版本控制。本教程将详细讲解如何在Eclipse环境中配置和使用Maven。 1. **...

    apache-maven的插件包:apache-maven-3.5.3-bin

    这个版本的发布意味着开发者可以下载并安装这个版本,以便在他们的Java项目中使用Maven进行构建。 **Maven 的核心概念** 1. **项目对象模型(Project Object Model,POM)**:Maven 使用POM作为项目配置的基础,这...

    大话Maven生命周期

    第二 这个模型是一种标准 在不同的项目中 使用Maven的接口是一样的 这样就不用去仔细理解每个项目的构建了 一般情况下 mvn clean install 这样的命令是通用的 这是吸收了许多项目的经验 Maven才能定义出如此完善的...

    maven免安装包

    4. **使用Maven**:现在你可以像平常一样在项目中使用Maven,如`mvn clean install`来清理并构建项目,或者`mvn dependency:tree`查看项目的依赖关系。 ** 镜像与设置 ** 在某些网络环境下,直接访问Maven中央仓库...

    项目中引用Maven私服仓库的快速配置教程.pdf

    项目中引用Maven私服仓库的快速配置教程, 帮助开发人员快速进行项目中Maven私服的配置,更灵活地管理自己项目中的Jar包。

Global site tag (gtag.js) - Google Analytics