@Override
    public void visit(int version, int access, String name, String signature, String superName, String[] interfaces) {
        this.name = Analyze.internalNameToClassName(name)
                .orElseThrow(() -> new RuntimeException("Unable to resolve class name for " + name));

        if (version > Opcodes.V17 && jdkVersionCheck == JdkVersionCheck.ENABLED) {
            var jdkVersion = version - 44;
            throw new RuntimeException("Class " + name + " is compiled for Java version " + jdkVersion + ", but only Java 17 is supported");
        }

        addImportWithInternalName(superName);
        List.of(interfaces).forEach(this::addImportWithInternalName);

        AnalyzeSignatureVisitor.analyzeClass(signature, this);
    }
Picks up classes used in class files.

@author Tony Vaagenes
@author ollivir
@author gjoranv
bundle-plugin/src/main/java/com/yahoo/container/plugin/classanalysis/AnalyzeClassVisitor.java