皮天真 2024-05-01 23:26 采纳率: 0%
浏览 9

Jenkins发送到测试服务器失败!

Jenkins自动发布到测试服务器异常!能打包,但就是每次传送的文件都是0!

img

img

img


上面的源路径是绝对路径!

img


测试服务器也没问题!
但是每次运行,就是传送文件数量都是0!完全没有头绪改什么地方!请大家指教!

  • 写回答

4条回答 默认 最新

  • 专家-皆知 2024-05-01 23:26
    关注

    参考免费微信小程序:皆我百晓生 作答,经由专家-皆知整理回复,如问题解决,望采纳;如仍有疑问,请评论回复。

    根据您提供的信息,看起来您的Jenkins构建任务在执行文件传输时遇到了问题,导致目标服务器上的文件数量为0。这可能是由于多种原因引起的,包括配置错误、权限问题或者是网络连接问题。让我们一步步排查这个问题。

    首先,确保您的Jenkins构建脚本(例如Shell或Groovy)正确地打包了项目,并且目标目录中的jar文件存在。您可以通过在Jenkins构建步骤中增加一条命令来验证这一点,比如ls /root/jenkins/workspace/project/target/,看是否能看到java-project-0.0.1-SNAPSHOT.jar文件。

    其次,检查您的Jenkins插件配置。这里主要涉及的是用于文件传输的插件,通常可能是SSH Slaves插件或者SCP插件。确认它们已正确安装并启用。

    对于SSH传输,您可以尝试以下操作:

    1. 确保Jenkins用户有正确的权限来连接到测试服务器,并且可以从jenkins-server上ssh到testserver。
    2. 检查/root/.ssh/config文件中是否存在与testserver相关的配置,如果有,请确保密钥对已经正确配置,且jenkins用户可以访问。
    3. 在Jenkins管理页面的"Manage Jenkins" > "Global Tool Configuration"中,检查SSH客户端配置是否正确,特别是私钥和公钥的路径设置。
    4. 如果可能,尝试手动从jenkins-server通过SSH连接到testserver,上传一个文件,看看是否成功。

    对于SCP传输,您需要确保:

    1. SCP插件已正确安装并启用。
    2. SCP的源和目标路径设置正确。

    接下来,我们来修改Jenkins的构建步骤,添加一些额外的日志输出,以便更好地理解问题所在。在Advanced区域的Execute shellScript步骤中,加入以下内容:

    #!/bin/bash
    
    # 验证本地jar文件是否存在
    if [[ ! -f "/root/jenkins/workspace/project/target/java-project-0.0.1-SNAPSHOT.jar" ]]; then
        echo "Error: Local jar file does not exist."
        exit 1
    fi
    
    # 连接到远程服务器并验证连接
    ssh -o StrictHostKeyChecking=no -i /path/to/your/private/key user@testserver 'echo $?'
    
    # 将jar文件复制到远程服务器
    scp -o StrictHostKeyChecking=no -i /path/to/your/private/key /root/jenkins/workspace/project/target/java-project-0.0.1-SNAPSHOT.jar user@testserver:/root/
    
    # 在远程服务器上检查jar文件是否已传输
    ssh -o StrictHostKeyChecking=no -i /path/to/your/private/key user@testserver 'ls /root/java-project-0.0.1-SNAPSHOT.jar && echo $?'
    

    /path/to/your/private/key替换为您实际的SSH私钥路径,然后保存并重新触发构建。这样,您可以在构建日志中看到每个命令的返回值,这有助于确定哪个步骤出错。

    如果问题仍然存在,考虑收集更详细的日志信息,包括Jenkins的主节点和agent节点的日志。这些日志通常位于/var/log/jenkins目录下,查找jenkins.log文件,或者在特定构建后查找其对应的console.log文件。

    如果问题依然未解决,请提供上述步骤中的任何错误消息或有用的信息,以便我可以进一步协助您定位问题。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 5月1日

悬赏问题

  • ¥15 如何在vue.config.js中读取到public文件夹下window.APP_CONFIG.API_BASE_URL的值
  • ¥50 浦育平台scratch图形化编程
  • ¥20 求这个的原理图 只要原理图
  • ¥15 vue2项目中,如何配置环境,可以在打完包之后修改请求的服务器地址
  • ¥20 微信的店铺小程序如何修改背景图
  • ¥15 UE5.1局部变量对蓝图不可见
  • ¥15 一共有五道问题关于整数幂的运算还有房间号码 还有网络密码的解答?(语言-python)
  • ¥20 sentry如何捕获上传Android ndk 崩溃
  • ¥15 在做logistic回归模型限制性立方条图时候,不能出完整图的困难
  • ¥15 G0系列单片机HAL库中景园gc9307液晶驱动芯片无法使用硬件SPI+DMA驱动,如何解决?