美文网首页Maven
maven的scope属性

maven的scope属性

作者: 纳米君 | 来源:发表于2020-02-11 10:40 被阅读0次
    • compile:默认值,适用于所有阶段,随项目一起发布。
    • provided:只在编译期使用,不随项目发布。如 lombok。
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <scope>provided</scope>
    </dependency>
    
    • runtime:只在运行时使用,编译时不需要。如:mysql、Oracle。
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency>
    
    • test:只在测试时使用,不随项目发布。如: junit。
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
    
    • system:引用本地jar包。
    <dependency>
        <groupId>org.ojdbc6</groupId>
        <artifactId>ojdbc6</artifactId>
        <scope>system</scope>
        <version>${oracle.version}</version>
        <systemPath>${basedir}/src/main/resources/lib/ojdbc6-11.2.0.3.jar</systemPath>
    </dependency>
    
    • import:maven2.9以上版本,解决maven单继承问题。只能用在<dependencyManagement>里面,且仅用于 <type>pom</type> 的 <dependency>。
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-dependencies</artifactId>
                <version>${spring-cloud.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    

    关于 <optional> 标签:默认值为 false, 表示子项目必须依赖该 jar。为 true,则表示子项目不会依赖该 jar。

    相关文章

      网友评论

        本文标题:maven的scope属性

        本文链接:https://www.haomeiwen.com/subject/aohhpctx.html