您当前的位置: 首页 >  ar

Bulut0907

暂无认证

  • 0浏览

    0关注

    346博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Apache Maven依赖的scope范围总结和将jar包安装到maven仓库

Bulut0907 发布时间:2022-07-06 09:17:27 ,浏览量:0

目录
  • 1. scope的可选值
  • 2. 依赖范围表(compile、test、provided)
  • 3. import
  • 4. system
  • 5. runtime
  • 6. optional可选依赖
  • 7. 将jar包安装到maven仓库
    • 7.1 背景
    • 7.2 将jar包安装到maven仓库

1. scope的可选值

可选值如下:

compile、test、provided、import、system、runtime

2. 依赖范围表(compile、test、provided) 空间时间\scopecompile(默认)testprovidedmain目录(空间)有效无效有效test目录(空间)有效有效有效开发过程(时间)有效有效有效部署到服务器(时间)有效无效无效应用场景服务器需要该jar包测试服务器已有该jar包 3. import

当我们自己创建的项目父工程,依赖另一个项目的父工程,会违背Maven的单继承。可以通过import依赖范围来依赖多个项目的父工程

如下示例所示:

  
    
      
        org.springframework.cloud
        spring-cloud-dependencies
        2021.0.3
        pom
        import
      

    
  

说明:

  • 必须放在dependencyManagement中
  • type: 打包类型必须是 pom
4. system

用于将本地的jar包引入到我们项目进行使用。移植性太差,不建议使用

  
    
      org.apache.flink
      flink-connector-jdbc
      1.15.0
      C:\Users\dell\Desktop\flink-connector-jdbc-1.15.0.jar
      system
    
  
5. runtime

专门用于编译时不需要,但是运行时需要的jar包。比如mysql-connector-java-8.0.29.jar驱动包

  
    
      mysql
      mysql-connector-java
      8.0.29
      runtime
    
  
6. optional可选依赖

有时会有optional为true的可选依赖,如下所示:


    org.springframework.boot
    spring-boot-devtools
    2.7.1
    runtime
    true

表示该依赖对于项目来说,可有可无。其核心含义是:Project A依赖Project B,B 中一部分A用不到的代码依赖了C,那么对A来说C就是可有可无的

7. 将jar包安装到maven仓库 7.1 背景

有时别人只提供一个jar包给你,就需要我们将该jar包安装到本地仓库中,供我们使用

7.2 将jar包安装到maven仓库

我们准备一个jar包,名称为maven-learn-0.1.jar

使用install插件的install-file目标,将jar包安装到maven仓库。如下所示

C:\Users\dell>mvn install:install-file -Dfile=C:\Users\dell\Desktop\maven-learn-0.1.jar ^
More? -DgroupId=com.hh ^
More? -DartifactId=maven-learn ^
More? -Dversion=0.1 ^
More? -Dpackaging=jar
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---
[INFO] Installing C:\Users\dell\Desktop\maven-learn-0.1.jar to D:\install_software\maven\apache-maven-3.8.1\repository\com\hh\maven-learn\0.1\maven-learn-0.1.jar
[INFO] Installing C:\Users\dell\AppData\Local\Temp\mvninstall1123739996078159064.pom to D:\install_software\maven\apache-maven-3.8.1\repository\com\hh\maven-learn\0.1\maven-learn-0.1.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.730 s
[INFO] Finished at: 2022-07-01T16:28:48+08:00
[INFO] ------------------------------------------------------------------------

C:\Users\dell>

其中定义的groupId、artifactId、version可以和源jar包maven-learn-0.1.jar中定义的不一样

然后就可以对导入的依赖,进行引用使用了

关注
打赏
1664501120
查看更多评论
立即登录/注册

微信扫码登录

0.0357s