我用gradle插件
plugins {
id 'net.ltgt.errorprone' version '2.0.2' apply false
}现在,我在Github上分了net.ltgt.errorprone,在分支changes中做了一些更改。我如何告诉Gradle使用叉子而不是上游?
我为依赖项找到了这个https://stackoverflow.com/questions/62223693/fork-git-repository-as-dependency-in-gradle,为插件寻找类似的东西。
发布于 2022-09-11 19:08:46
我使用jitpack.io将分叉代码作为dep分发到我的应用程序中。
您可以进入https://jitpack.io/并输入您的git,它将为您提供可用的参考资料。

另外,不要忘记检查ref的日志,这样您就可以知道jitpack实际上可以构建您的dep。
日志可以通过日志列中的图标获得。
如果图标不可见,您可以通过url访问它。
例如,对于提交散列384433165eba475b113189d05786d4daf17c465c,它位于https://jitpack.io/com/github/johnrengelman/shadow/384433165eba475b113189d05786d4daf17c465c/build.log上
在这里,您可以看到构建实际上是坏的,因为插件至少需要jdk 11,但是jitpack使用v1.8运行它。
通过在项目根目录中创建具有以下内容的jitpack.yml,您可以强制jitpack tu使用另一个jdk版本:
jdk: openjdk11有关更多信息,请参见https://jitpack.io/docs/BUILDING/#java-version。
我发现了一些如何使用叉子的方法,但我最喜欢的是这一个:
假设你用这些
plugins {
// in my opinion, removing `version` makes it more obvious that we're using JitPack, but it can stay too
id 'com.eriwen.gradle.css' version '2.14.0'
id 'com.eriwen.gradle.js' version '2.14.1'
}因此,您可以通过在settings.gradle中添加以下内容(jitpack存储库和替换解决方案)来用叉子替换它们
pluginManagement {
repositories {
gradlePluginPortal()
maven {
url 'https://jitpack.io'
}
}
resolutionStrategy {
eachPlugin {
if (requested.id.id == 'com.eriwen.gradle.css') {
useModule('com.github.eriwen:gradle-css-plugin:9fe88d7') // can also be a branch, i.e. `master-SNAPSHOT`
}
if (requested.id.id == 'com.eriwen.gradle.js') {
useModule('com.github.eriwen:gradle-js-plugin:d15f4ae') // can also be a branch, i.e. `master-SNAPSHOT`
}
}
}
}https://stackoverflow.com/questions/72026635
复制相似问题