Gradle 本地依赖测试
Gradle Local Dependency Testing
我有 3 个 gradle 项目,项目 A、项目 B、项目 C。所有这些都构建了一个名为 projectX-0.0.0.jar 的 jar 文件。在我的詹金斯服务器上,所有这些项目都将这些 jar 部署到我公司的人工制品中。
在项目 A 中,我在整个项目中使用了多个编译依赖项。然后在项目 B 中,我通过声明包含项目 A:compile group: 'com.company.projectName', name: 'projectA, version '0.0.0'
所以我可以使用这些依赖项(即 slf4j)我对项目 C 执行相同的操作以包含项目 B 依赖项,结果包含项目 A 的依赖项。
在我将代码推送到服务器之后,这对我们部署的 jenkins 服务器非常有用,但是当我尝试在本地测试时,我无法更新依赖项来测试我的代码。
我试过:
正在更新 gradle 缓存,该缓存使用本地构建的项目 A jar 从 artifactory 下载项目 A。位于 C:/users/username/.gradle/caches/path-to-jar
.
删除了 compile group: 'com.company.projectName', name: 'projectA, version '0.0.0'
并将其替换为 compile files('libs/projectA-0.0.0.jar')
,将项目 A 的 jar 放在项目 B 的 lib 文件夹中
在 IntelliJ 中使用 gradle 离线模式并重复 #1
我的电脑完全离线并重复#1
经过上述所有 4 次尝试,我仍然无法解决项目 A 中为项目 B 声明的依赖项。
我的目标是能够更新编译、测试编译、运行时间等。我的 projectA.gradle 文件中的依赖项,然后 运行 我的项目在我的管道中,以确保此更新按我的预期影响我项目中的依赖项。
您需要更新 gradle 缓存中的 .jar 和 .pom 文件。 .jar 文件包含源代码,而 pom 包含您在上一个项目中引入的依赖项。使用 gradlew clean build install
你可以创建 jar 和 pom。
因此,要解决您的问题,请在项目-a 上执行 gradle build clean install
。从生成的构建文件中获取 jar 和 pom,并替换缓存中的 project-a.jar 和 project-a.pom。然后对 project-b 做同样的事情,你会在 gradle 刷新后看到 project-c 的变化。
我有 3 个 gradle 项目,项目 A、项目 B、项目 C。所有这些都构建了一个名为 projectX-0.0.0.jar 的 jar 文件。在我的詹金斯服务器上,所有这些项目都将这些 jar 部署到我公司的人工制品中。
在项目 A 中,我在整个项目中使用了多个编译依赖项。然后在项目 B 中,我通过声明包含项目 A:compile group: 'com.company.projectName', name: 'projectA, version '0.0.0'
所以我可以使用这些依赖项(即 slf4j)我对项目 C 执行相同的操作以包含项目 B 依赖项,结果包含项目 A 的依赖项。
在我将代码推送到服务器之后,这对我们部署的 jenkins 服务器非常有用,但是当我尝试在本地测试时,我无法更新依赖项来测试我的代码。
我试过:
正在更新 gradle 缓存,该缓存使用本地构建的项目 A jar 从 artifactory 下载项目 A。位于
C:/users/username/.gradle/caches/path-to-jar
.删除了
compile group: 'com.company.projectName', name: 'projectA, version '0.0.0'
并将其替换为compile files('libs/projectA-0.0.0.jar')
,将项目 A 的 jar 放在项目 B 的 lib 文件夹中在 IntelliJ 中使用 gradle 离线模式并重复 #1
我的电脑完全离线并重复#1
经过上述所有 4 次尝试,我仍然无法解决项目 A 中为项目 B 声明的依赖项。
我的目标是能够更新编译、测试编译、运行时间等。我的 projectA.gradle 文件中的依赖项,然后 运行 我的项目在我的管道中,以确保此更新按我的预期影响我项目中的依赖项。
您需要更新 gradle 缓存中的 .jar 和 .pom 文件。 .jar 文件包含源代码,而 pom 包含您在上一个项目中引入的依赖项。使用 gradlew clean build install
你可以创建 jar 和 pom。
因此,要解决您的问题,请在项目-a 上执行 gradle build clean install
。从生成的构建文件中获取 jar 和 pom,并替换缓存中的 project-a.jar 和 project-a.pom。然后对 project-b 做同样的事情,你会在 gradle 刷新后看到 project-c 的变化。