Tag: jenkins

从java代码中的jenkins作业中获取参数

我有一个参数化的jenkins工作,正在访问我的插件。 在Java的内部插件代码中,我需要使用这些参数,我必须在jenkins中触发另一个作业。 我无法获取这些参数,现在这是一个非常高优先级的问题。 我已经在stackoverflow上尝试了多种解决方案,例如,尝试访问环境变量但没有收到param的值。 例如,我的参数是’REPOS’,我需要它的值,我试过: System.getProperty(“REPOS”); 但它返回null。 还试过: Map env = System.getenv(); for (String envName : env.keySet()) { System.out.format(“%s=%s%n”, envName, env.get(envName)); } 但它会打印jenkins的环境变量而不是作业的参数。 我指的是param旁边的文本框中传递的值:“url”在下图中。 请协助。

如何在Groovy Jenkins管道中使用全局外部Java库中的方法?

首先,我是Java,Groovy和Jenkins的新手所以请耐心等待我;) 我正在准备一个支持Pipeline的Jenkins服务器,以便将来在我们的构建环境中使用。 我们使用一种特殊的内部脚本语言,我必须在java中编写一个包装器。 没有选择只在Groovy中完成这项工作,我们必须使用这种特殊语言。 我已经尝试了很多方法将java lib引用到这个jenkins项目但是都没有用。 主要是我使用了https://github.com/jenkinsci/workflow-cps-global-lib-plugin上的文档来实现这一点,但也尝试了几种搜索google或stackoverflow的方法。 在文档之后,这应该是可能的。 我已将流程简化为测试设置以进行测试。 假设以下…… 我在Jenkins有一个名为’MultibranchTestProject01’的多分支项目。 jenkins文件: @Library(‘DeltaJenkinsScripts@develop’) def runStageCollect = true if (runStageCollect) { stage(“Collect”) { helloWorld(“Joe”) } } 引用的库通过Jenkins设置中的“全局管道库”全局引用,但也明确说明了这些内容。 它托管在一个git环境中,引用似乎有效。 该库的文件结构: /vars/helloWorld.groovy package de.dcomp.prod def call(name) { def tt = new Test() tt.testText() } /src/de/dcomp/prod/Test.groovy package de.dcomp.prod import de.dcomp.ftel.* def testText() { def sRetVal = “” echo “testText […]

运行jenkins给出“包org.junit不存在”

任何人都可以帮我解决这个错误吗? build-project: [echo] AntProject: /root/.jenkins/jobs/Ant/workspace/build.xml [javac] Compiling 2 source files to /root/.jenkins/jobs/Ant/workspace/bin [javac] /root/.jenkins/jobs/Ant/workspace/src/com/moi/test/junit/MaClasseTest.java:3: package org.junit does not exist [javac] import static org.junit.Assert.*; [javac] ^ [javac] /root/.jenkins/jobs/Ant/workspace/src/com/moi/test/junit/MaClasseTest.java:5: package org.junit does not exist [javac] import org.junit.Test; [javac] ^ [javac] /root/.jenkins/jobs/Ant/workspace/src/com/moi/test/junit/MaClasseTest.java:9: cannot find symbol [javac] symbol : class Test [javac] location: class com.moi.test.junit.MaClasseTest [javac] @Test [javac] ^ […]

无法在macOs上启动Jenkins – Java 10

我正在尝试使用以下方式启动Jenkins: java -jar jenkins.war 我收到了这个错误: java.lang.UnsupportedClassVersionError: 54.0 at Main.main(Main.java:128) 在更新我的开发环境之后出现此问题,我已切换到: Java 10.0.1 + 10 jenkins2.107.2 MacOS 10.13.4

使用maven和jenkins,如何测试程序员做了一些测试用例?

我正在开发一些项目,我们正在使用Java,Springs,Maven和Jenkins进行CI,但我遇到的问题是一些程序员没有在项目中添加真正的junit测试用例。 我希望maven和jenkins在部署到服务器之前运行测试。 一些程序员进行了空白测试,因此启动和停止并通过测试。 有人可以请告诉我如何自动进行此检查,以便maven和jenkins可以查看测试是否输出了一些输出。

如果超出Sonar阈值,我如何让Hudson / Jenkins失败?

我正在使用maven构建我的Java应用程序,Jenkins用于CI和Sonar用于指标。 目前我有一个构建作业,可以创建声纳报告。 (通过Jenkins中的构建后步骤触发。) 如果达到某些阈值,我想将此设置为失败,即任何主要或阻止程序违规或复杂程度超过1.7。 任何指导将不胜感激! – L.

包中包含具有相同名称的对象和包

我在使用Maven或Eclipse编译一些Scala时遇到问题,我尝试从包含名称空间和同名类的Java jar导入类。 但是我可以用scalac编译。 例如,Java项目(jar)包含: src/foo/bar.java src/foo/bar/some_resource.txt -> foobar.jar Scala project references foobar.jar Foobartest.scala: import foo.bar class foobartest { } 编译器抱怨: package foo contains object and package with same name: bar one of them needs to be removed from classpath 使用Maven 3.0.03 / Eclipse 3.7.1和Scala 2.9.0.1(和maven-scala-plugin )。 我遇到问题的jar是jenkins-core-1.399.jar – 它肯定包含几个实例,其中有一个名称空间和同名对象。 我试图在Scala中编写一个Jenkins插件(我可以用Java做这个,但是我更喜欢scala,因为我们所有的库都在scala中),这依赖于使用Maven – https://wiki.jenkins-ci.org/display/JENKINS/Plugin+tutorial 。

即使构建成功,构建也会被标记为不稳定

我正在运行Jenkins版本1.411并使用Maven进行构建。 即使应用程序构建成功,Jenkins也将其视为不稳定的构建。 我已禁用所有测试以隔离问题。 [INFO] ———————————————————————— [INFO] BUILD SUCCESS [INFO] ———————————————————————— [INFO] Total time: 45.389s [INFO] Finished at: Wed May 11 12:16:57 EST 2011 [INFO] [DocLinks] Skip document Adaptiv generated site … (No such directory: site) Final Memory: 27M/543M [INFO] ———————————————————————— channel stopped Archiving artifacts Email was triggered for: Unstable Sending email for trigger: Unstable An […]

PowerMock PrepareForTest注释导致AmazonSQSClient构造函数出现问题

我在使用PrepareForTest注释和创建AmazonSQSClient的新实例时遇到了一些麻烦。 我正在写一个Jenkins插件,不幸的是需要模拟FormValidation静态类,以确保在我的插件的字段validation时产生警告和错误消息。 但是在创建AmazonSQSClient的实例时,我得到一个org.apache.http.conn.ssl.SSLInitializationException 我把它抽象成一个非常简单的例子,这是我的测试文件: package com.test; import com.amazonaws.services.sqs.AmazonSQS; import com.amazonaws.services.sqs.AmazonSQSClient; import org.junit.Test; import org.junit.runner.RunWith; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; @RunWith(PowerMockRunner.class) public class SQSTest { // This is for mimicking the mocking of FormValidation private static class Foo {} @Test @PrepareForTest(Foo.class) public void buildTest() { AmazonSQS sqs = new AmazonSQSClient(); } } 在运行此代码时,我收到以下错误: org.apache.http.conn.ssl.SSLInitializationException: Failure initializing default […]

如何配置自定义maven项目结构

我知道通常maven结构是这样的: pom.xml src – main – web – WEB-INF 但是,我有一个具有以下结构的项目 src – main web – WEB-INF 上面两个中的后者目前不使用maven。 我已经开始在本地使用maven,使结构符合maven标准。 但是,我现在想要从jenkins中自动构建这个项目,将其从源代码控制(svn)中取出。 所以我想添加一个pom.xml,它知道web不在src 这可能与maven有关吗?