【问题标题】:Jenkins start JBOSS inside of a job and go onJenkins 在工作中启动 JBOSS 并继续
【发布时间】:2014-04-08 10:03:53
【问题描述】:

我有一份我想要的 Jenkins 工作

- build my application 
- start the jboss via batch
- sleep some time to wait for the jboss
- do some junit tests
- stop the jboss

我遇到的问题是 jboss 启动后作业没有继续。它显示了完整的 jboss 日志并不断刷新此日志。 所以 sleep 和 junit 测试永远不会执行。

批量调用即时通讯使用:

cmd.exe /C F:\jboss-5.1.0.GA-jdk6\bin\run.bat -c Servername -Djboss.service.binding.set=ports-05 -Djboss.bind.address=0.0.0.0

我不能使用 jenkins jboss 管理插件,因为我必须为这个特定的工作设置 java_opts。

知道如何在不显示 jenkins 控制台日志的情况下启动 Jboss 吗?

编辑:

感谢您的回答,但呼叫/开始对我也不起作用。

我的工作解决方案: (不太好,但它有效,只是觉得我应该分享它)

  • 我创建了第二个 Jenkins 作业,它通过上面的批处理调用启动 JBoss。
  • 然后将此作业更改为远程触发。 “触发器远程构建”
  • 现在我将第一个作业更改为在构建步骤“执行批处理命令”中触发第二个作业
    • wget --spider build_trigger_url

所以我的工作现在正在这样做:

  • 构建我的应用程序
  • 通过 wget 触发 jboss jenkins 作业
    • 这第二个作业现在也在 jenkins 上运行,直到它被手动关闭
  • 睡一会,直到 jboss 启动
  • 执行junit测试
  • 停止 jboss
    • 通过 jboss 管理插件,这会杀死第二个工作

【问题讨论】:

    标签: jboss jenkins hudson


    【解决方案1】:

    你应该把它改成cmd.exe /C call F:\jboss-5.1.0.GA-jdk6\bin\run.bat <whatever params>

    当您触发.bat 时,它会将控制权传递给它并运行它,直到.bat 终止。相反,您需要生成另一个进程来运行.bat。这是通过call 命令完成的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-26
      • 1970-01-01
      • 2013-02-16
      • 1970-01-01
      相关资源
      最近更新 更多