<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # Maven 依賴范圍 > 原文: [https://howtodoinjava.com/maven/maven-dependency-scopes/](https://howtodoinjava.com/maven/maven-dependency-scopes/) **Maven 依賴范圍**屬性用于指定相對于不同生命周期階段(構建,測試,運行時等)的依賴項可見性。 Maven 提供了六個范圍,即`compile`,`provided`,`runtime`,`test`,`system`和`import`。 ```java Table of Contents 1\. Compile Scope 2\. Provided Scope 3\. Runtime Scope 4\. Test Scope 5\. System Scope 6\. Import Scope 7\. Transitivity Resolution ``` ## Maven 依賴范圍 – `compile` 這是 **maven 默認范圍**。 *構建*,*測試*和*運行*項目需要具有`compile`范圍的依賴項。 在大多數情況下,必須使用范圍`compile`才能將`import`語句解析為您的 Java 類源代碼。 ```java <dependencies> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.14</version> <!-- You can ommit this because it is default --> <scope>compile</scope> </dependency> </dependencies> ``` ## Maven 依賴范圍 – `provided` Maven 依賴范圍`provided`在**構建和測試**期間用于整個項目。 它們也需要運行,但是**不應導出**,因為依賴項將由運行時提供,例如,由 servlet 容器或應用服務器提供。 ```java <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> ``` ## Maven 依賴范圍 – `runtime` 不需要構建具有 maven 依賴范圍`runtime`的依賴項,但它們是**測試和運行**項目的類路徑的一部分。 ```java <dependency> <groupId>com.thoughtworks.xstream</groupId> <artifactId>xstream</artifactId> <version>1.4.4</version> <scope>runtime</scope> </dependency> ``` ## Maven 依賴范圍 – `test` 不需要使用 maven 依賴范圍`test`來構建和運行項目。 需要它們來**編譯和運行單元測試**。 ```java <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> ``` ## Maven 依賴范圍 – `system` 具有`system`的依賴項與具有范圍`provided`的依賴項相似。 唯一的區別是`system`依賴項不是從遠程倉庫中檢索到的。 它們位于項目的子目錄下,并從那里進行引用。 有關更多詳細信息,請參見[外部依賴項](//howtodoinjava.com/maven/maven-dependency-management/#external-dependency)。 ```java <dependency> <groupId>extDependency</groupId> <artifactId>extDependency</artifactId> <scope>system</scope> <version>1.0</version> <systemPath>${basedir}\war\WEB-INF\lib\extDependency.jar</systemPath> </dependency> ``` ## Maven 依賴范圍 – `import` `import`范圍僅在`dependencyManagement`部分中的類型為`pom`的依賴項上受支持。 它在指定的 POM 的`dependencyManagement`部分中指示要用有效的依賴項列表替換的依賴項。 ```java <dependencyManagement> <dependencies> <dependency> <groupId>other.pom.group.id</groupId> <artifactId>other-pom-artifact-id</artifactId> <version>SNAPSHOT</version> <scope>import</scope> <type>pom</type> </dependency> </dependencies> </dependencyManagement> ``` ## Maven 依賴項可傳遞性解析 當您包含一個 maven 依賴項并且它具有它自己的其他依賴項(即傳遞性依賴項)時,您可能還想弄清楚這些傳遞性依賴項的范圍。 讓我們用一個簡單的表來了解 **maven 傳遞依賴項**。 在此表中,如果在左列中將*范圍設置為依賴項,則在頂部行*的*可傳遞依賴項將導致在其交點處列出的范圍。* | 依賴項 | 編譯 | 提供 | 運行 | 測試 | | --- | --- | --- | --- | --- | | `compile` | `compile` | – | `runtime` | – | | `provided` | `provided` | – | `provided` | – | | `runtime` | `runtime` | – | `runtime` | – | | `test` | `test` | – | `test` | – | 將我的問題放在評論部分。 學習愉快!
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看