这是我第一次使用Maven,并尝试包括对Java项目的依赖。
我已经尝试过按照网上的说明进行操作,但似乎无法获得理想的结果,希望能得到适合5岁儿童的解释。
Following the setup instructions,我将以下内容添加到pom.xml中:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>libraries-bom</artifactId>
<version>2.2.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client</artifactId>
</dependency>
</dependencies>
</dependencyManagement>
然后,我download the latest assembly zip file from Maven Central。但是我应该从这里做什么?我应该如何处理zip文件的内容?我不知道从这里开始可以采取什么步骤来开始使用该库,因此不胜感激。
最佳答案
dependenciesManagement
标记允许合并和集中声明的对象中定义的基础依赖项的版本。
需要在dependencies
之外的单独的dependencyManagement
标记中声明项目特定的依赖项。
下载依赖关系归档文件的步骤仅在需要手动将必需的依赖关系/工件添加到程序类路径的情况下使用。当您希望通过构建工具(例如Maven或Gradle)管理依赖项时,无需这样做。
我做了一些小研究,看来com.google.cloud:libraries-bom
不能管理google-oauth-client
工件。检出当前导入的libraries-bom的托管依赖项部分。google-oauth-client
的最新版本是1.30.5
,由不同的bom依赖项管理(而不是libraries-bom)
管理)。
我发现最新版本的google-oauth-client
由其自身的bom依赖项管理。因此,您可以通过添加类似于以下内容的内容将其导入到Maven项目中:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client-bom</artifactId>
<version>1.30.5</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<!-- this has the different libraries than the above one -->
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>libraries-bom</artifactId>
<version>4.1.1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.oauth-client</groupId>
<artifactId>google-oauth-client</artifactId>
</dependency>
</dependencies>
我不知道该问题的来历,但最重要的是,您所阅读的github Wiki页面未使用涵盖这些Bom管理的依赖项中的更改的信息进行更新。
关于java - 如何通过Maven将Google的OAuth客户端导入IntelliJ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60386076/