Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Gradle见证插件与java库一起使用_Java_Maven_Gradle - Fatal编程技术网

将Gradle见证插件与java库一起使用

将Gradle见证插件与java库一起使用,java,maven,gradle,Java,Maven,Gradle,很长一段时间以来,我一直在使用带有java插件的Gradle,以及Gradle Witness来验证Maven依赖性。e、 g: apply plugin: 'java' apply plugin: 'witness' dependencies { compile "io.netty:netty-all:4.0.30.Final" } dependencyVerification { verify = [ 'io.netty:netty-all:1578cbb

很长一段时间以来,我一直在使用带有
java
插件的Gradle,以及Gradle Witness来验证Maven依赖性。e、 g:

apply plugin: 'java'
apply plugin: 'witness'

dependencies {
    compile "io.netty:netty-all:4.0.30.Final"
}

dependencyVerification {
    verify = [
        'io.netty:netty-all:1578cbb1354f02951c6ce5d374962e703afb882321164db9e3a2cfb141a1ebeb'
    ]
}
我现在想切换到
java库
插件,但它似乎与Witness不兼容。生成失败,出现以下错误:
未找到完整性断言的依赖项:io.netty:netty all

apply plugin: 'java-library'
apply plugin: 'witness'

dependencies {
    implementation "io.netty:netty-all:4.0.30.Final"
}

dependencyVerification {
    verify = [
        'io.netty:netty-all:1578cbb1354f02951c6ce5d374962e703afb882321164db9e3a2cfb141a1ebeb'
    ]
}
我工作的项目是安全敏感的,我们需要能够验证依赖项的精确校验和(而不仅仅是
PGP
签名)

是否有任何方法可以帮助
Witness
解决问题,或者使用具有相同功能的不同插件?不幸的是,证人似乎没有得到保护。

应涵盖所有案件

示例集成:

主要特点有:

  • 插件本身不会尝试播放/解析配置。它应该透明地支持所有任务和其他Gradle插件
  • 插件(!)的校验和也被验证。换句话说,来自坏JAR的类文件永远不会开始执行
  • 该插件添加了一个任务
    allDependencies
    ,这基本上是Gradle默认的
    dependencies
    任务,添加到所有项目中
  • 该插件生成
    rootDir/build/checksum/checksum.xml
    文件(因此您可以查看它)。除此之外,您还可以添加
    -PchecksumUpdate
    来更新校验和/PGP键

  • 似乎我不是唯一一个错过这个功能的人:谢谢!我在RSK项目上发表了一期新文章,对其进行评估: