`
kong6001
  • 浏览: 141286 次
  • 性别: Icon_minigender_1
  • 来自: 广东广州
社区版块
存档分类
最新评论

Maven-Maven Dependency Scope

 
阅读更多

 

  • compile
    默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。
  • provided
    跟compile相似,但是表明了dependency 由JDK或者容器提供,例如Servlet AP和一些Java EE APIs。这个scope 只能作用在编译和测试时,同时没有传递性。        
  • runtime
    表示dependency不作用在编译时,但会作用在运行和测试时 
  • test
    表示dependency作用在测试时,不作用在运行时。
  • system
    跟provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它。 例如:
    <project>
    ...
    <dependencies>
      <dependency>
       <groupId>javax.sql</groupId>
       <artifactId>jdbc-stdext</artifactId>
       <version>2.0</version>
       <scope>system</scope>
       <systemPath>${java.home}/lib/rt.jar</systemPath>
      </dependency>
    </dependencies>
    ...
    </project>
    import (Maven 2.0.9 之后新增)
    它只使用在<dependencyManagement>中,表示从其它的pom中导入dependency的配置,例如:  
      This scope is only used on a dependency of type pom in the <dependencyManagement> section. It indicates that the specified POM should be replaced with the dependencies in that POM's <dependencyManagement> section. Since they are replaced, dependencies with a scope of import do not actually participate in limiting the transitivity of a dependency.
分享到:
评论

相关推荐

    使用Maven控件proguard-maven-plugin给可执行jar文件混淆

    &lt;scope&gt;runtime&lt;/scope&gt; &lt;/dependency&gt; ... ... ``` 在这个配置中,我们指定了`proguard-maven-plugin`的版本,并在`execution`元素中定义了混淆操作,将其绑定到`package`阶段。`options`部分定义了...

    maven-apache-maven-3.5.3.zip

    **Maven的依赖范围(Dependency Scope):** 1. `compile`:默认范围,编译时可用,打包时包含。 2. `test`:测试范围,仅在测试时可用,打包时不包含。 3. `runtime`:运行时范围,运行和测试时可用,打包时不包含...

    maven-archetype-quickstart-1.4.jar.zip

    &lt;scope&gt;test&lt;/scope&gt; &lt;/dependency&gt; ``` Maven通过读取`pom.xml`中的配置来管理项目的构建生命周期,包括编译、测试、打包、部署等阶段。例如,执行`mvn test`命令,Maven会使用JUnit运行所有标记为`@Test`的...

    apache-maven-2.2.1.zip

    在依赖管理方面,Maven 2.2.1 引入了依赖树(dependency tree)命令,帮助开发者清晰地查看项目及其所有依赖的关系。此外,它还支持依赖范围(scope),如编译(compile)、运行时(runtime)、测试(test)等,以...

    maven-root.pom

    &lt;scope&gt;import&lt;/scope&gt; &lt;/dependency&gt; &lt;/dependencyManagement&gt; ``` 此外,"maven-root.pom" 还可以用来定义全局的构建插件和配置,如编码规范检查、代码覆盖率报告等,确保整个项目遵循一致的开发标准和流程。...

    maven-ant-tasks-2.1.3-src

    Dependency management - including transitive dependencies, scope recognition and SNAPSHOT handling Artifact deployment - deployment to a Maven repository (file integrated, other with extensions) POM ...

    maven-ojdbc7-maven本地离线安装包.zip

    &lt;scope&gt;system&lt;/scope&gt; ${project.basedir}/lib/ojdbc7-12.1.0.2.jar &lt;/dependency&gt; ``` 这里的 `&lt;systemPath&gt;` 标签指向了JAR文件在本地文件系统的路径,确保路径正确无误。 4. 保存并关闭pom.xml后,运行 ...

    maven-assembly 自定义打包方式

    &lt;scope&gt;runtime&lt;/scope&gt; &lt;/dependencySet&gt; ``` 这个描述符指定了打包格式为tar.gz,包含了`src/main/resources`目录下的所有.properties文件,并放入打包后的/conf目录,同时将所有运行时依赖放入/lib目录。 ...

    maven-3.2.3环境的配置的压缩包

    &lt;scope&gt;test&lt;/scope&gt; &lt;/dependency&gt; ``` 在这个例子中,`groupId`、`artifactId` 和 `version` 组成了项目的唯一标识,`dependencies` 节点则列出了项目所依赖的库。 总结来说,Maven 3.2.3 的环境配置主要...

    apache-maven-3.0.2-bin

    * [MNG-4953] - Issue a warning when a system-scope dependency refers to the project basedir ** New Feature * [MNG-4936] - Allow to better monitor and adjust a Maven build during CI * [MNG-4937] - ...

    maven3.8下载包

    &lt;scope&gt;test&lt;/scope&gt; &lt;/dependency&gt; ``` Maven通过执行不同的生命周期阶段,如`clean`(清理项目)、`compile`(编译源代码)、`test`(运行测试)、`package`(打包应用)和`deploy`(部署应用),帮助开发者...

    Maven-Tutorial.md

    &lt;scope&gt;test&lt;/scope&gt; &lt;/dependency&gt; ``` 3. **保存文件**:保存 `pom.xml` 文件后,Maven 会自动下载并添加依赖到项目中。 #### 5. 常见问题 ##### 依赖下载失败 1. **检查网络连接**:确保可以访问 Maven ...

    maven-javaweb入门

    ** Maven JavaWeb 入门详解 ** Maven 是一个强大的项目管理和依赖管理工具,尤其在JavaWeb开发中,它能够帮助开发者有效地构建、管理和部署项目。本教程将引导你了解如何使用Maven来构建JavaWeb应用程序,以"web...

    maven ---servlet3.1项目模板

    【 Maven 概述】 Maven 是一个强大的项目管理和构建工具,广泛应用于Java开发领域。它通过使用一个统一的项目对象模型(Project Object Model,POM)来管理项目的配置信息,包括依赖、构建过程、插件等,使得项目的...

    maven-pom配置文件

    在Maven项目中,`&lt;dependencyManagement&gt;`标签用于集中管理项目的依赖版本。这样做的好处是可以避免项目中不同模块使用不同的依赖版本,从而引发版本冲突等问题。示例中的部分配置如下: ```xml &lt;dependency...

    apache-maven-3.3.9.zip

    &lt;scope&gt;test&lt;/scope&gt; &lt;/dependency&gt; ``` 有了这个依赖,你就可以在项目中引入TestNG的相关类,编写测试用例。Maven提供了内置的生命周期阶段,如`test`,执行此阶段时,Maven会调用TestNG运行所有的测试,并生成...

    Win10 环境下Apache Maven的配置文件以及教程

    `&lt;dependency&gt;`标签用于定义依赖,包括groupId、artifactId、version和scope(如`compile`、`test`)。 5. Maven插件 Maven的插件机制使其功能强大且灵活。通过`&lt;build&gt;&lt;plugins&gt;`配置,你可以添加额外的插件来执行...

    maven-ant-tasks-2.1.3

    Dependency management - including transitive dependencies, scope recognition and SNAPSHOT handling Artifact deployment - deployment to a Maven repository (file integrated, other with extensions) POM ...

Global site tag (gtag.js) - Google Analytics