我正在尝试编译一个旨在用作 Jenkins 插件的 maven 项目。运行“mvn package”命令时,我收到下面列出的错误。可以做些什么来解决问题?
TIA
看到这个:
https://mvnrepository.com/artifact/org.apache.maven/maven-plugin-api/3.5.0
并取出将 Maven 插件定义为“父级”的部分,而是将其设为“依赖项”
然后我开始收到如下错误: “未知包装:hpi @ 第 12 行,第 13 列”
然后我看到了以下内容:
Jenkins plug-in developing - Maven issue: Unknown packaging: hpi
它说 =>“另外,将详细信息添加到您的 .m2/settings.xml,如本教程顶部所示,以允许使用短名称“hpi”。”
更改 settings.xml 后(根据链接)仍然不断收到“未知包装...”错误
然后我回到了包附带的原始 pom.xml 文件。
pom.xml 文件如下所列:
这一次,在使用它之后,似乎任何/所有与 Jenkins 相关的 jar 文件都已下载(这需要一些时间)。 “hpi”错误消失了,但被一个新错误所取代
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running InjectedTest
Tests run: 18, Failures: 3, Errors: 12, Skipped: 0, Time elapsed: 60.722 sec <<< FAILURE! - in InjectedTest
edu\utah\med\ped\WaveMakerDeployer\config.jelly(org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck) Time elapsed: 0.338 sec <<< FAILURE!
java.lang.AssertionError: <?jelly escape-by-default='true'?> is missing in file:/C:/WORK/Development/JENKINS/WaveMakerJenkinsDeployer/target/classes/edu/utah/med/ped/WaveMakerDeployer/config.jelly
at org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.runTest(JellyTestSuiteBuilder.java:108)
edu\utah\med\ped\WaveMakerDeployer\global.jelly(org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck) Time elapsed: 0.086 sec <<< FAILURE!
java.lang.AssertionError: <?jelly escape-by-default='true'?> is missing in file:/C:/WORK/Development/JENKINS/WaveMakerJenkinsDeployer/target/classes/edu/utah/med/ped/WaveMakerDeployer/global.jelly
at org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.runTest(JellyTestSuiteBuilder.java:108)
index.jelly(org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck) Time elapsed: 0.019 sec <<< FAILURE!
java.lang.AssertionError: <?jelly escape-by-default='true'?> is missing in file:/C:/WORK/Development/JENKINS/WaveMakerJenkinsDeployer/target/classes/index.jelly
at org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck.runTest(JellyTestSuiteBuilder.java:108)
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No tests found matching Method index.jelly(org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck) from org.junit.internal.requests.ClassRequest@450f78c9
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No tests found matching Method edu\utah\med\ped\WaveMakerDeployer\config.jelly(org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck) from org.junit.internal.requests.ClassRequest@4877102b
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0.001 sec <<< ERROR!
java.lang.Exception: No tests found matching Method edu\utah\med\ped\WaveMakerDeployer\global.jelly(org.jvnet.hudson.test.JellyTestSuiteBuilder$JellyCheck) from org.junit.internal.requests.ClassRequest@c69c38
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0.001 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0.001 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0.001 sec <<< ERROR!
java.lang.Exception: No runnable methods
initializationError(org.junit.runner.manipulation.Filter) Time elapsed: 0.001 sec <<< ERROR!
java.lang.Exception: No runnable methods
Results :
Failed tests:
JellyTestSuiteBuilder$JellyCheck.runTest:108 <?jelly escape-by-default='true'?> is missing in file:/C:/WORK/Development/JENKINS/WaveMakerJenkinsDeployer/target/classes/edu/utah/med/ped/WaveMakerDeployer/config.jelly
JellyTestSuiteBuilder$JellyCheck.runTest:108 <?jelly escape-by-default='true'?> is missing in file:/C:/WORK/Development/JENKINS/WaveMakerJenkinsDeployer/target/classes/edu/utah/med/ped/WaveMakerDeployer/global.jelly
JellyTestSuiteBuilder$JellyCheck.runTest:108 <?jelly escape-by-default='true'?> is missing in file:/C:/WORK/Development/JENKINS/WaveMakerJenkinsDeployer/target/classes/index.jelly
Tests in error:
org.junit.runner.manipulation.Filter.initializationError(org.junit.runner.manipulation.Filter)
Run 1: Filter.initializationError ▒ No tests found matching Method index.jelly(org.j...
Run 2: Filter.initializationError ▒ No tests found matching Method edu\utah\med\ped\...
Run 3: Filter.initializationError ▒ No tests found matching Method edu\utah\med\ped\...
Run 4: Filter.initializationError ▒ No runnable methods
Run 5: Filter.initializationError ▒ No runnable methods
Run 6: Filter.initializationError ▒ No runnable methods
Run 7: Filter.initializationError ▒ No runnable methods
Run 8: Filter.initializationError ▒ No runnable methods
Run 9: Filter.initializationError ▒ No runnable methods
Run 10: Filter.initializationError ▒ No runnable methods
Run 11: Filter.initializationError ▒ No runnable methods
Run 12: Filter.initializationError ▒ No runnable methods
问题:从这里可以去哪里?这些“默认”注入(inject)测试有多重要
TIA
最佳答案
开发 jenkins 插件时,需要配置 maven 从 repo.jenkins-ci.org 中查找库。这是一个示例 ~/.m2/settings.xml
:
<settings>
<pluginGroups>
<pluginGroup>org.jenkins-ci.tools</pluginGroup>
</pluginGroups>
<profiles>
<!-- Give access to Jenkins plugins -->
<profile>
<id>jenkins</id>
<activation>
<activeByDefault>true</activeByDefault> <!-- change this to false, if you don't like to have it on per default -->
</activation>
<repositories>
<repository>
<id>repo.jenkins-ci.org</id>
<url>https://repo.jenkins-ci.org/public/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>repo.jenkins-ci.org</id>
<url>https://repo.jenkins-ci.org/public/</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<mirrors>
<mirror>
<id>repo.jenkins-ci.org</id>
<url>https://repo.jenkins-ci.org/public/</url>
<mirrorOf>m.g.o-public</mirrorOf>
</mirror>
</mirrors>
</settings>
这是来自 https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial .请注意,如果您使用的是 nexus,则可以在此处找到特定于 nexus 的替代说明。
关于maven - 在 https :plugin:pom:2. maven.apache.org/maven2 中找不到 org.jenkins-ci.plugins ://repo. 11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43690435/