首页 > 解决方案 > Jenkins 与 GitHub 和 Ionic 项目集成的问题

问题描述

我正在尝试将离子应用程序与 Jenkins 集成,并且我使用 GitHub 作为存储库。当我手动运行多分支管道作业时,Jenkins 显示以下错误。

有谁知道可能是什么问题?我正在尝试了解 CI/CD 如何与这个演示实验一起工作。

我指的是这个 Youtube 视频:https ://www.youtube.com/watch?v=q5voVJb3rHI&t=605s

Started by user admin
13:42:45 Connecting to https://api.github.com using PrashobThekkyal/*****
Obtained Jenkinsfile from a85fffb01a96c5c5d550326873047c6071557aff
Running in Durability level: MAX_SURVIVABILITY

GitHub has been notified of this commit’s build result

java.lang.IllegalArgumentException: Unsupported class file major version 57
    at org.kohsuke.asm6.ClassReader.<init>(ClassReader.java:176)
    at org.kohsuke.asm6.ClassReader.<init>(ClassReader.java:158)
    at org.kohsuke.asm6.ClassReader.<init>(ClassReader.java:146)
    at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.reader(ClassLoadingReferenceTypeHierachyReader.java:64)
    at org.jenkinsci.bytecode.helper.TypeHierarchyReader.hierarchyOf(TypeHierarchyReader.java:176)
    at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.hierarchyOf(ClassLoadingReferenceTypeHierachyReader.java:39)
    at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFrom(TypeHierarchyReader.java:321)
    at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFromAnyInterfaceImplementedBy(TypeHierarchyReader.java:329)
    at org.jenkinsci.bytecode.helper.TypeHierarchyReader$TypeHierarchy.isAssignableFrom(TypeHierarchyReader.java:311)
    at org.jenkinsci.bytecode.helper.TypeHierarchyReader.isAssignableFrom(TypeHierarchyReader.java:124)
    at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.isAssignableFrom(ClassLoadingReferenceTypeHierachyReader.java:39)
    at org.jenkinsci.bytecode.helper.TypeHierarchyReader.getCommonSuperClass(TypeHierarchyReader.java:131)
    at org.jenkinsci.bytecode.helper.ClassLoadingReferenceTypeHierachyReader.getCommonSuperClass(ClassLoadingReferenceTypeHierachyReader.java:39)
    at org.jenkinsci.bytecode.NonClassLoadingClassWriter.getCommonSuperClass(NonClassLoadingClassWriter.java:72)
    at org.kohsuke.asm6.SymbolTable.addMergedType(SymbolTable.java:1209)
    at org.kohsuke.asm6.Frame.merge(Frame.java:1293)
    at org.kohsuke.asm6.Frame.merge(Frame.java:1238)
    at org.kohsuke.asm6.MethodWriter.computeAllFrames(MethodWriter.java:1604)
    at org.kohsuke.asm6.MethodWriter.visitMaxs(MethodWriter.java:1540)
    at org.kohsuke.asm6.tree.MethodNode.accept(MethodNode.java:807)
    at org.kohsuke.asm6.commons.JSRInlinerAdapter.visitEnd(JSRInlinerAdapter.java:150)
    at org.jenkinsci.bytecode.Transformer$1$1.visitEnd(Transformer.java:109)
    at org.kohsuke.asm6.MethodVisitor.visitEnd(MethodVisitor.java:783)
    at org.kohsuke.asm6.ClassReader.readMethod(ClassReader.java:1278)
    at org.kohsuke.asm6.ClassReader.accept(ClassReader.java:679)
    at org.kohsuke.asm6.ClassReader.accept(ClassReader.java:391)
    at org.jenkinsci.bytecode.Transformer.transform(Transformer.java:115)
    at hudson.ClassicPluginStrategy$AntClassLoader2.defineClassFromData(ClassicPluginStrategy.java:706)
    at jenkins.util.AntClassLoader.getClassFromStream(AntClassLoader.java:1310)
    at jenkins.util.AntClassLoader.findClassInComponents(AntClassLoader.java:1363)
    at jenkins.util.AntClassLoader.findClass(AntClassLoader.java:1326)
    at jenkins.util.AntClassLoader.loadClass(AntClassLoader.java:1079)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at org.jenkinsci.plugins.workflow.cps.CpsScript.<init>(CpsScript.java:69)
    at WorkflowScript.<init>(WorkflowScript)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
    at java.base/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:166)
    at java.base/jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:404)
    at java.base/java.lang.Class.newInstance(Class.java:591)
    at org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:434)
Caused: groovy.lang.GroovyRuntimeException: Failed to create Script instance for class: class WorkflowScript. Reason
    at org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:466)
    at groovy.lang.GroovyShell.parse(GroovyShell.java:700)
    at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.doParse(CpsGroovyShell.java:142)
    at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:127)
    at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:561)
    at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:522)
    at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:327)
    at hudson.model.ResourceController.execute(ResourceController.java:97)
    at hudson.model.Executor.run(Executor.java:429)
Finished: FAILURE

詹金斯文件

pipeline {
    agent any

    stages {
        stage ('Build') {

            steps {
                echo "Building Multibranch Pipeline"
            }
        }

        stage ('Testing') {

            steps {
                echo "Testing Multibranch Pipeline"
            }
        }


        stage ('Deployment') {
            steps {                
                echo "False Deploying Multibranch Pipeline"
            }
        }
    }
}

詹金斯作业配置: 在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

标签: jenkins

解决方案


经过几天的分析,我终于找到了解决方案。我犯了一个非常基本的错误,即不阅读运行 Jenkins 的版本要求。

运行 Jenkins 作业的 Java 要求

如上面 URL 中所述,在“运行 Jenkins”部分下,他们已经明确提到了运行 Jenkins 作业的 java 支持版本。所以我检查了 Java 版本,它在Java 13-a上运行,是的,这很愚蠢,因为 Jenkins 作业只能在 Java 版本 8 和 11 上运行。

因此,将您的 java 版本降级为 8 或 11,它将顺利运行。

证明 在此处输入图像描述

我想删除我的愚蠢问题,但后来我想保留它,以防万一它可以帮助某人。请不要给这篇文章任何类型的(+ve 或 -vew)点,因为它没有任何意义。


推荐阅读