Skip to content

Can manually run project but not in VS Code due to an ambiguous failure to compile #1496

@ryanswech

Description

@ryanswech

As of last Friday morning (2024-06-28) I can no longer run my project through VS Code. No change to the project occurred between the last time I ran it this way and these issues.

A few of my classes (it seems to be specifically automatically generate classes from JOOQ) are randomly marked with the following error at the very top of the file (ie. the error indicator doesn't seem to be linked to any part of the code):

Internal compiler error: java.lang.RuntimeException: Internal Error compiling /myapp/target/generated-sources/db/mydb/com/myapp/mydb/tables/Comm.java at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:151)

If I manually compile and run my code ("mvn install", "java -jar -Dspring.profiles.active=local target/myapp-0.0.1-SNAPSHOT.jar") there are no compilation errors and everything works as expected.

When I try to run my application through VS Code it fails because of missing classes on the class path (java.lang.ClassNotFoundException: com.myapp.mydb.tables.records.SomeClassRecord). When I go look in the target folder, those classes are indeed missing but one of the Java extensions seems to be the culprit.

If I manually compile ("mvn compile") the application, the classes get compiled and added to the classes folder by maven. However, when I run it in VS Code the extensions seem to recompile the project (the target folder seems to get cleared out) and fails to re-add the classes, presumably because of the error described above.

I have attached what I believe to be the relevant part of the log but if you need additional logs I am happy to include them.

Environment
  • Operating System: Windows 10.0.19045.4529
  • JDK version: 18.0.1.1
  • Visual Studio Code version: 1.90.2
  • Java extension version: 0.23.7 (java-dependency, not sure if that is the extension you mean)
  • Java Debugger extension version: 0.58.0
Steps To Reproduce

Sorry, I am not sure how to describe the reproduction of the issue in a project agnostic way since I don't understand it and I can't really give you my entire project.

!ENTRY org.eclipse.jdt.ls.core 1 0 2024-07-02 11:16:24.601
!MESSAGE Reconciled 1. Took 94 ms

!ENTRY org.eclipse.jdt.core 4 4 2024-07-02 11:16:25.316
!MESSAGE Exception occurred during problem detection:
----------------------------------- SOURCE BEGIN -------------------------------------
/*
 * This file is generated by jOOQ.
 */
package com.myapp.mydb.tables;


import com.myapp.mydb.MyDb;
import com.myapp.mydb.Keys;
import com.myapp.mydb.tables.records.CommRecord;

import java.util.function.Function;

import org.jooq.Field;
import org.jooq.ForeignKey;
import org.jooq.Function8;
import org.jooq.Name;
import org.jooq.Record;
import org.jooq.Records;
import org.jooq.Row8;
import org.jooq.Schema;
import org.jooq.SelectField;
import org.jooq.Table;
import org.jooq.TableField;
import org.jooq.TableOptions;
import org.jooq.UniqueKey;
import org.jooq.impl.DSL;
import org.jooq.impl.SQLDataType;
import org.jooq.impl.TableImpl;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class Comm extends TableImpl<CommRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * The reference instance of <code>mydb.comm</code>
     */
    public static final Comm COMM = new Comm();

    /**
     * The class holding records for this type
     */
    @Override
    public Class<CommRecord> getRecordType() {
        return CommRecord.class;
    }

    /**
     * The column <code>mydb.comm.id</code>.
     */
    public final TableField<CommRecord, Integer> ID = createField(DSL.name("id"), SQLDataType.INTEGER.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.port</code>.
     */
    public final TableField<CommRecord, Integer> PORT = createField(DSL.name("port"), SQLDataType.INTEGER.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.status</code>.
     */
    public final TableField<CommRecord, Byte> STATUS = createField(DSL.name("status"), SQLDataType.TINYINT.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.load_id</code>.
     */
    public final TableField<CommRecord, Integer> LOAD_ID = createField(DSL.name("load_id"), SQLDataType.INTEGER.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.start</code>.
     */
    public final TableField<CommRecord, Byte> START = createField(DSL.name("start"), SQLDataType.TINYINT.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.ks_pkcs12</code>.
     */
    public final TableField<CommRecord, byte[]> KS_PKCS12 = createField(DSL.name("ks_pkcs12"), SQLDataType.BLOB.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.ks_psw_enc</code>.
     */
    public final TableField<CommRecord, String> KS_PSW_ENC = createField(DSL.name("ks_psw_enc"), SQLDataType.VARCHAR(64).nullable(false), this, "");

    /**
     * The column <code>mydb.comm.ks_alias</code>.
     */
    public final TableField<CommRecord, String> KS_ALIAS = createField(DSL.name("ks_alias"), SQLDataType.VARCHAR(16).nullable(false), this, "");

    private Comm(Name alias, Table<CommRecord> aliased) {
        this(alias, aliased, null);
    }

    private Comm(Name alias, Table<CommRecord> aliased, Field<?>[] parameters) {
        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table());
    }

    /**
     * Create an aliased <code>mydb.comm</code> table reference
     */
    public Comm(String alias) {
        this(DSL.name(alias), COMM);
    }

    /**
     * Create an aliased <code>mydb.comm</code> table reference
     */
    public Comm(Name alias) {
        this(alias, COMM);
    }

    /**
     * Create a <code>mydb.comm</code> table reference
     */
    public Comm() {
        this(DSL.name("comm"), null);
    }

    public <O extends Record> Comm(Table<O> child, ForeignKey<O, CommRecord> key) {
        super(child, key, COMM);
    }

    @Override
    public Schema getSchema() {
        return aliased() ? null : MyDb.MYDB;
    }

    @Override
    public UniqueKey<CommRecord> getPrimaryKey() {
        return Keys.KEY_COMM_PRIMARY;
    }

    @Override
    public Comm as(String alias) {
        return new Comm(DSL.name(alias), this);
    }

    @Override
    public Comm as(Name alias) {
        return new Comm(alias, this);
    }

    @Override
    public Comm as(Table<?> alias) {
        return new Comm(alias.getQualifiedName(), this);
    }

    /**
     * Rename this table
     */
    @Override
    public Comm rename(String name) {
        return new Comm(DSL.name(name), null);
    }

    /**
     * Rename this table
     */
    @Override
    public Comm rename(Name name) {
        return new Comm(name, null);
    }

    /**
     * Rename this table
     */
    @Override
    public Comm rename(Table<?> name) {
        return new Comm(name.getQualifiedName(), null);
    }

    // -------------------------------------------------------------------------
    // Row8 type methods
    // -------------------------------------------------------------------------

    @Override
    public Row8<Integer, Integer, Byte, Integer, Byte, byte[], String, String> fieldsRow() {
        return (Row8) super.fieldsRow();
    }

    /**
     * Convenience mapping calling {@link SelectField#convertFrom(Function)}.
     */
    public <U> SelectField<U> mapping(Function8<? super Integer, ? super Integer, ? super Byte, ? super Integer, ? super Byte, ? super byte[], ? super String, ? super String, ? extends U> from) {
        return convertFrom(Records.mapping(from));
    }

    /**
     * Convenience mapping calling {@link SelectField#convertFrom(Class,
     * Function)}.
     */
    public <U> SelectField<U> mapping(Class<U> toType, Function8<? super Integer, ? super Integer, ? super Byte, ? super Integer, ? super Byte, ? super byte[], ? super String, ? super String, ? extends U> from) {
        return convertFrom(toType, Records.mapping(from));
    }
}

----------------------------------- SOURCE END -------------------------------------
!STACK 0
java.lang.ClassCastException: class org.eclipse.jdt.internal.compiler.lookup.ArrayBinding cannot be cast to class org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding (org.eclipse.jdt.internal.compiler.lookup.ArrayBinding and org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @58654294)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:547)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:530)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.TypeBinding.upwardsProjection(TypeBinding.java:325)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.deriveTypeArgumentConstraints(BoundSet.java:974)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:630)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:511)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.resolve(InferenceContext18.java:1215)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1052)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1035)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod18(ParameterizedGenericMethodBinding.java:256)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod(ParameterizedGenericMethodBinding.java:92)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:842)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:799)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod0(Scope.java:1753)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1655)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:3145)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.findMethodBinding(MessageSend.java:1138)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:914)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:866)
	at org.eclipse.jdt.internal.compiler.ast.ReturnStatement.resolve(ReturnStatement.java:362)
	at org.eclipse.jdt.internal.compiler.ast.Statement.resolveWithBindings(Statement.java:498)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveStatements(ASTNode.java:725)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:713)
	at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:409)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:611)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1514)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1643)
	at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:666)
	at org.eclipse.jdt.internal.compiler.Compiler.resolve(Compiler.java:1068)
	at org.eclipse.jdt.internal.compiler.Compiler.resolve(Compiler.java:1110)
	at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:280)
	at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:346)
	at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.makeConsistent(ReconcileWorkingCopyOperation.java:186)
	at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:92)
	at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:739)
	at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:804)
	at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1303)
	at org.eclipse.jdt.ls.core.internal.handlers.BaseDocumentLifeCycleHandler.publishDiagnostics(BaseDocumentLifeCycleHandler.java:332)
	at org.eclipse.jdt.ls.core.internal.handlers.BaseDocumentLifeCycleHandler.publishDiagnostics(BaseDocumentLifeCycleHandler.java:295)
	at org.eclipse.jdt.ls.core.internal.handlers.BaseDocumentLifeCycleHandler$PublishDiagnosticJob.run(BaseDocumentLifeCycleHandler.java:777)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)

!ENTRY org.eclipse.core.resources 4 2 2024-07-02 11:16:25.562
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".
!STACK 0
java.lang.RuntimeException: Internal Error compiling /myapp/target/generated-sources/db/mydb/com/myapp/mydb/tables/Comm.java
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:151)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: class org.eclipse.jdt.internal.compiler.lookup.ArrayBinding cannot be cast to class org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding (org.eclipse.jdt.internal.compiler.lookup.ArrayBinding and org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @58654294)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:547)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:530)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.TypeBinding.upwardsProjection(TypeBinding.java:325)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.deriveTypeArgumentConstraints(BoundSet.java:974)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:630)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:511)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.resolve(InferenceContext18.java:1215)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1052)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1035)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod18(ParameterizedGenericMethodBinding.java:256)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod(ParameterizedGenericMethodBinding.java:92)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:842)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:799)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod0(Scope.java:1753)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1655)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:3145)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.findMethodBinding(MessageSend.java:1138)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:914)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:866)
	at org.eclipse.jdt.internal.compiler.ast.ReturnStatement.resolve(ReturnStatement.java:362)
	at org.eclipse.jdt.internal.compiler.ast.Statement.resolveWithBindings(Statement.java:498)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveStatements(ASTNode.java:725)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:713)
	at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:409)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:611)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1514)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1643)
	at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:666)
	at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:904)
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:147)
	... 1 more

!ENTRY org.eclipse.jdt.ls.core 1 0 2024-07-02 11:16:26.011
!MESSAGE Reconciled 1. Took 3 ms

!ENTRY org.eclipse.jdt.core 4 4 2024-07-02 11:16:26.701
!MESSAGE Exception occurred during problem detection:
----------------------------------- SOURCE BEGIN -------------------------------------
/*
 * This file is generated by jOOQ.
 */
package com.myapp.mydb.tables;


import com.myapp.mydb.MyDb;
import com.myapp.mydb.Keys;
import com.myapp.mydb.tables.records.CommRecord;

import java.util.function.Function;

import org.jooq.Field;
import org.jooq.ForeignKey;
import org.jooq.Function8;
import org.jooq.Name;
import org.jooq.Record;
import org.jooq.Records;
import org.jooq.Row8;
import org.jooq.Schema;
import org.jooq.SelectField;
import org.jooq.Table;
import org.jooq.TableField;
import org.jooq.TableOptions;
import org.jooq.UniqueKey;
import org.jooq.impl.DSL;
import org.jooq.impl.SQLDataType;
import org.jooq.impl.TableImpl;


/**
 * This class is generated by jOOQ.
 */
@SuppressWarnings({ "all", "unchecked", "rawtypes" })
public class Comm extends TableImpl<CommRecord> {

    private static final long serialVersionUID = 1L;

    /**
     * The reference instance of <code>mydb.comm</code>
     */
    public static final Comm COMM = new Comm();

    /**
     * The class holding records for this type
     */
    @Override
    public Class<CommRecord> getRecordType() {
        return CommRecord.class;
    }

    /**
     * The column <code>mydb.comm.id</code>.
     */
    public final TableField<CommRecord, Integer> ID = createField(DSL.name("id"), SQLDataType.INTEGER.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.port</code>.
     */
    public final TableField<CommRecord, Integer> PORT = createField(DSL.name("port"), SQLDataType.INTEGER.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.status</code>.
     */
    public final TableField<CommRecord, Byte> STATUS = createField(DSL.name("status"), SQLDataType.TINYINT.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.load_id</code>.
     */
    public final TableField<CommRecord, Integer> LOAD_ID = createField(DSL.name("load_id"), SQLDataType.INTEGER.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.start</code>.
     */
    public final TableField<CommRecord, Byte> START = createField(DSL.name("start"), SQLDataType.TINYINT.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.ks_pkcs12</code>.
     */
    public final TableField<CommRecord, byte[]> KS_PKCS12 = createField(DSL.name("ks_pkcs12"), SQLDataType.BLOB.nullable(false), this, "");

    /**
     * The column <code>mydb.comm.ks_psw_enc</code>.
     */
    public final TableField<CommRecord, String> KS_PSW_ENC = createField(DSL.name("ks_psw_enc"), SQLDataType.VARCHAR(64).nullable(false), this, "");

    /**
     * The column <code>mydb.comm.ks_alias</code>.
     */
    public final TableField<CommRecord, String> KS_ALIAS = createField(DSL.name("ks_alias"), SQLDataType.VARCHAR(16).nullable(false), this, "");

    private Comm(Name alias, Table<CommRecord> aliased) {
        this(alias, aliased, null);
    }

    private Comm(Name alias, Table<CommRecord> aliased, Field<?>[] parameters) {
        super(alias, null, aliased, parameters, DSL.comment(""), TableOptions.table());
    }

    /**
     * Create an aliased <code>mydb.comm</code> table reference
     */
    public Comm(String alias) {
        this(DSL.name(alias), COMM);
    }

    /**
     * Create an aliased <code>mydb.comm</code> table reference
     */
    public Comm(Name alias) {
        this(alias, COMM);
    }

    /**
     * Create a <code>mydb.comm</code> table reference
     */
    public Comm() {
        this(DSL.name("comm"), null);
    }

    public <O extends Record> Comm(Table<O> child, ForeignKey<O, CommRecord> key) {
        super(child, key, COMM);
    }

    @Override
    public Schema getSchema() {
        return aliased() ? null : MyDb.MYDB;
    }

    @Override
    public UniqueKey<CommRecord> getPrimaryKey() {
        return Keys.KEY_COMM_PRIMARY;
    }

    @Override
    public Comm as(String alias) {
        return new Comm(DSL.name(alias), this);
    }

    @Override
    public Comm as(Name alias) {
        return new Comm(alias, this);
    }

    @Override
    public Comm as(Table<?> alias) {
        return new Comm(alias.getQualifiedName(), this);
    }

    /**
     * Rename this table
     */
    @Override
    public Comm rename(String name) {
        return new Comm(DSL.name(name), null);
    }

    /**
     * Rename this table
     */
    @Override
    public Comm rename(Name name) {
        return new Comm(name, null);
    }

    /**
     * Rename this table
     */
    @Override
    public Comm rename(Table<?> name) {
        return new Comm(name.getQualifiedName(), null);
    }

    // -------------------------------------------------------------------------
    // Row8 type methods
    // -------------------------------------------------------------------------

    @Override
    public Row8<Integer, Integer, Byte, Integer, Byte, byte[], String, String> fieldsRow() {
        return (Row8) super.fieldsRow();
    }

    /**
     * Convenience mapping calling {@link SelectField#convertFrom(Function)}.
     */
    public <U> SelectField<U> mapping(Function8<? super Integer, ? super Integer, ? super Byte, ? super Integer, ? super Byte, ? super byte[], ? super String, ? super String, ? extends U> from) {
        return convertFrom(Records.mapping(from));
    }

    /**
     * Convenience mapping calling {@link SelectField#convertFrom(Class,
     * Function)}.
     */
    public <U> SelectField<U> mapping(Class<U> toType, Function8<? super Integer, ? super Integer, ? super Byte, ? super Integer, ? super Byte, ? super byte[], ? super String, ? super String, ? extends U> from) {
        return convertFrom(toType, Records.mapping(from));
    }
}

----------------------------------- SOURCE END -------------------------------------
!STACK 0
java.lang.ClassCastException: class org.eclipse.jdt.internal.compiler.lookup.ArrayBinding cannot be cast to class org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding (org.eclipse.jdt.internal.compiler.lookup.ArrayBinding and org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @58654294)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:547)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:530)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.TypeBinding.upwardsProjection(TypeBinding.java:325)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.deriveTypeArgumentConstraints(BoundSet.java:974)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:630)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:511)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.resolve(InferenceContext18.java:1215)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1052)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1035)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod18(ParameterizedGenericMethodBinding.java:256)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod(ParameterizedGenericMethodBinding.java:92)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:842)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:799)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod0(Scope.java:1753)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1655)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:3145)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.findMethodBinding(MessageSend.java:1138)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:914)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:866)
	at org.eclipse.jdt.internal.compiler.ast.ReturnStatement.resolve(ReturnStatement.java:362)
	at org.eclipse.jdt.internal.compiler.ast.Statement.resolveWithBindings(Statement.java:498)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveStatements(ASTNode.java:725)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:713)
	at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:409)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:611)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1514)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1643)
	at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:666)
	at org.eclipse.jdt.internal.compiler.Compiler.resolve(Compiler.java:1068)
	at org.eclipse.jdt.internal.compiler.Compiler.resolve(Compiler.java:1110)
	at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:280)
	at org.eclipse.jdt.internal.core.CompilationUnitProblemFinder.process(CompilationUnitProblemFinder.java:346)
	at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.makeConsistent(ReconcileWorkingCopyOperation.java:186)
	at org.eclipse.jdt.internal.core.ReconcileWorkingCopyOperation.executeOperation(ReconcileWorkingCopyOperation.java:92)
	at org.eclipse.jdt.internal.core.JavaModelOperation.run(JavaModelOperation.java:739)
	at org.eclipse.jdt.internal.core.JavaModelOperation.runOperation(JavaModelOperation.java:804)
	at org.eclipse.jdt.internal.core.CompilationUnit.reconcile(CompilationUnit.java:1303)
	at org.eclipse.jdt.ls.core.internal.handlers.BaseDocumentLifeCycleHandler.publishDiagnostics(BaseDocumentLifeCycleHandler.java:332)
	at org.eclipse.jdt.ls.core.internal.handlers.BaseDocumentLifeCycleHandler.publishDiagnostics(BaseDocumentLifeCycleHandler.java:295)
	at org.eclipse.jdt.ls.core.internal.handlers.BaseDocumentLifeCycleHandler$PublishDiagnosticJob.run(BaseDocumentLifeCycleHandler.java:777)
	at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)

!ENTRY org.eclipse.jdt.ls.core 4 0 2024-07-02 11:16:29.695
!MESSAGE Failed to build projects.
!STACK 1
org.eclipse.core.internal.resources.ResourceException: Errors occurred during the build.
	at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:612)
	at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:491)
	at org.eclipse.jdt.ls.core.internal.handlers.BuildWorkspaceHandler.buildProjects(BuildWorkspaceHandler.java:116)
	at com.microsoft.java.debug.plugin.internal.Compile.compile(Compile.java:100)
	at com.microsoft.java.debug.plugin.internal.JavaDebugDelegateCommandHandler.executeCommand(JavaDebugDelegateCommandHandler.java:72)
	at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler$1.run(WorkspaceExecuteCommandHandler.java:230)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:47)
	at org.eclipse.jdt.ls.core.internal.handlers.WorkspaceExecuteCommandHandler.executeCommand(WorkspaceExecuteCommandHandler.java:220)
	at org.eclipse.jdt.ls.core.internal.handlers.JDTLanguageServer.lambda$4(JDTLanguageServer.java:604)
	at org.eclipse.jdt.ls.core.internal.BaseJDTLanguageServer.lambda$0(BaseJDTLanguageServer.java:87)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(Unknown Source)
	at java.base/java.util.concurrent.CompletableFuture$Completion.exec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinTask.doExec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool.scan(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinPool.runWorker(Unknown Source)
	at java.base/java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source)
Contains: Errors running builder 'Java Builder' on project 'myapp'.
java.lang.RuntimeException: Internal Error compiling /myapp/target/generated-sources/db/mydb/com/myapp/mydb/tables/Comm.java
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:151)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: class org.eclipse.jdt.internal.compiler.lookup.ArrayBinding cannot be cast to class org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding (org.eclipse.jdt.internal.compiler.lookup.ArrayBinding and org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @58654294)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:547)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:530)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.TypeBinding.upwardsProjection(TypeBinding.java:325)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.deriveTypeArgumentConstraints(BoundSet.java:974)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:630)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:511)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.resolve(InferenceContext18.java:1215)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1052)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1035)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod18(ParameterizedGenericMethodBinding.java:256)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod(ParameterizedGenericMethodBinding.java:92)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:842)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:799)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod0(Scope.java:1753)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1655)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:3145)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.findMethodBinding(MessageSend.java:1138)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:914)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:866)
	at org.eclipse.jdt.internal.compiler.ast.ReturnStatement.resolve(ReturnStatement.java:362)
	at org.eclipse.jdt.internal.compiler.ast.Statement.resolveWithBindings(Statement.java:498)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveStatements(ASTNode.java:725)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:713)
	at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:409)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:611)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1514)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1643)
	at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:666)
	at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:904)
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:147)
	... 1 more
!SUBENTRY 1 org.eclipse.core.resources 4 75 2024-07-02 11:16:29.695
!MESSAGE Errors occurred during the build.
!SUBENTRY 2 org.eclipse.jdt.core 4 75 2024-07-02 11:16:29.695
!MESSAGE Errors running builder 'Java Builder' on project 'myapp'.
!STACK 0
java.lang.RuntimeException: Internal Error compiling /myapp/target/generated-sources/db/mydb/com/myapp/mydb/tables/Comm.java
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:151)
	at java.base/java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: class org.eclipse.jdt.internal.compiler.lookup.ArrayBinding cannot be cast to class org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding (org.eclipse.jdt.internal.compiler.lookup.ArrayBinding and org.eclipse.jdt.internal.compiler.lookup.ReferenceBinding are in unnamed module of loader org.eclipse.osgi.internal.loader.EquinoxClassLoader @58654294)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:547)
	at org.eclipse.jdt.internal.compiler.lookup.CaptureBinding.downwardsProjection(CaptureBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:530)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedTypeBinding.upwardsProjection(ParameterizedTypeBinding.java:1)
	at org.eclipse.jdt.internal.compiler.lookup.TypeBinding.upwardsProjection(TypeBinding.java:325)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.deriveTypeArgumentConstraints(BoundSet.java:974)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:630)
	at org.eclipse.jdt.internal.compiler.lookup.BoundSet.incorporate(BoundSet.java:511)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.resolve(InferenceContext18.java:1215)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1052)
	at org.eclipse.jdt.internal.compiler.lookup.InferenceContext18.solve(InferenceContext18.java:1035)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod18(ParameterizedGenericMethodBinding.java:256)
	at org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding.computeCompatibleMethod(ParameterizedGenericMethodBinding.java:92)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:842)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.computeCompatibleMethod(Scope.java:799)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod0(Scope.java:1753)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.findMethod(Scope.java:1655)
	at org.eclipse.jdt.internal.compiler.lookup.Scope.getMethod(Scope.java:3145)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.findMethodBinding(MessageSend.java:1138)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:914)
	at org.eclipse.jdt.internal.compiler.ast.MessageSend.resolveType(MessageSend.java:866)
	at org.eclipse.jdt.internal.compiler.ast.ReturnStatement.resolve(ReturnStatement.java:362)
	at org.eclipse.jdt.internal.compiler.ast.Statement.resolveWithBindings(Statement.java:498)
	at org.eclipse.jdt.internal.compiler.ast.ASTNode.resolveStatements(ASTNode.java:725)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolveStatements(AbstractMethodDeclaration.java:713)
	at org.eclipse.jdt.internal.compiler.ast.MethodDeclaration.resolveStatements(MethodDeclaration.java:409)
	at org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration.resolve(AbstractMethodDeclaration.java:611)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1514)
	at org.eclipse.jdt.internal.compiler.ast.TypeDeclaration.resolve(TypeDeclaration.java:1643)
	at org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration.resolve(CompilationUnitDeclaration.java:666)
	at org.eclipse.jdt.internal.compiler.Compiler.process(Compiler.java:904)
	at org.eclipse.jdt.internal.compiler.ProcessTaskManager.run(ProcessTaskManager.java:147)
	... 1 more
Current Result

Failure to compile and therefore run a project that worked previously.

Expected Result

If I can successfully compile and run my project with maven then I should also be able to do it through these extensions or get a specific error about why my project could not be compiled/run.

Additional Informations

I have already tried:

  • Cleaning the Java Language Workspace Server
  • Uninstalling and reinstalling all of the extensions in the "Extension Pack for Java"
  • Restarting VS Code
  • Manually deleting the extensions from %USERPROFILE%.vscode\extensions\ then reinstalling
  • Manually clearing %APPDATA%\Code[ - Variant]\User\workspaceStorage\

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions