java.nio.file.NoSuchFileException:构建Jenkins插件时/target/classes/META-INF/annotations/hudson.Extension

时间:2018-06-26 15:44:24

标签: jenkins plugins

我找到了一个用于StatsD和Jenkins(https://github.com/joemiller/jenkins-statsd-plugin)的插件-但是HPI需要构建,因为它在Jenkins插件存储库中不可用,也无法下载。

我按照https://wiki.jenkins.io/display/JENKINS/Plugin+tutorial上的官方说明进行操作,但是$ mvn package始终以[ERROR] java.nio.file.NoSuchFileException: ~/src/jenkins-statsd-plugin/target/classes/META-INF/annotations/hudson.Extension退出。

我尝试使用Java 6、7、8 10,但无济于事。

我想知道是否还有其他人在构建Jenkins插件时遇到了这个问题,它们的解决方案是什么?

3 个答案:

答案 0 :(得分:6)

我通过将JAVA_HOME设置为指向Oracle的Java 8版本来解决此问题。看来maven使用JAVA_HOME环境变量,而不是$ PATH。

编辑:对于其他情况,Jenv负责$ PATH中的Java版本。

答案 1 :(得分:1)

我想在这里发布来自各种对我有用的发现,因为仅接受的答案是不够的。

  • 我不得不将Java版本从13降级到11。 is required,不需要在本地安装JDK和Maven。

  • 此外,有必要在再次执行extractKeys()之前删除function extractKeys<T extends object, K extends keyof T>( entity: T, keys: { hash: K, range: K } ) { const ret = { [keys.hash]: entity[keys.hash], [keys.range]: entity[keys.range] } as Pick<T, K>; return ret as any as (typeof ret extends infer O ? { [P in keyof O]: O[P] } : never); } 目录。

  • 最后,将target/classes/META-INF/参数传递给Maven {{3}},因此您需要执行类似mvn install

  • 的操作

答案 2 :(得分:0)

使用Java 1.8。* JDK绝对可以解决此问题。