Skip to content

While debugging Java, 'Cannot evaluate because of compilation error(s): Evaluations must contain either an expression or a block of well-formed statements'Β #1158

@prumseycsi

Description

@prumseycsi

Issue Type: Bug

In a Maven project, creating a TableRowSorter breaks the Debug Console evaluator.
Set a breakpoint at the indicated line in the source file. At the breakpoint, type a simple expression (e.g. "before step") in the Debug Console. It works normally. Step the statement. Type an expression again and it fails.

#1158

Extension version: 0.40.1
VS Code version: Code 1.66.2 (dfd34e8260c270da74b5c2d86d61aee4b6d56977, 2022-04-11T07:46:01.075Z)
OS version: Windows_NT x64 10.0.19044
Restricted Mode: No

Extensions (16)
Extension Author (truncated) Version
csharp ms- 1.24.4
python ms- 2022.4.1
vscode-pylance ms- 2022.4.2
jupyter ms- 2022.3.1000901801
jupyter-keymap ms- 1.0.0
jupyter-renderers ms- 1.0.6
remote-wsl ms- 0.66.0
cpptools ms- 1.9.8
java red 1.5.0
vscodeintellicode Vis 1.2.20
vscode-java-debug vsc 0.40.1
vscode-java-dependency vsc 0.19.1
vscode-java-pack vsc 0.22.4
vscode-java-test vsc 0.34.2
vscode-maven vsc 0.35.1
omnipascal Wos 0.19.0

.project file:

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>SlideCatalog</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.jdt.core.javabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.m2e.core.maven2Builder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.eclipse.m2e.core.maven2Nature</nature>
	</natures>
	<filteredResources>
		<filter>
			<id>1616719244136</id>
			<name></name>
			<type>30</type>
			<matcher>
				<id>org.eclipse.core.resources.regexFilterMatcher</id>
				<arguments>node_modules|.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
			</matcher>
		</filter>
	</filteredResources>
</projectDescription>

Source file (SlideCatalog.java, located in the src/main/java/SlideCatalog subfolder of .project's folder):

package SlideCatalog;
/*
 * SlideCatalog.java requires no other files.
 */

import javax.swing.table.*;

public class SlideCatalog
{
    public SlideCatalog() {
/*-->Set breakpoint here<--*/ TableRowSorter<MyTableModel> sorter = new TableRowSorter<>(null);
    }

    class MyTableModel extends AbstractTableModel {
        public int getColumnCount() {
            return 4;
        }

        public int getRowCount() {
            return 4;
        }

        public String getColumnName(int col) {
            return "";
        }

        public Object getValueAt(int row, int col) {
            return "";
        }

        public Class<?> getColumnClass(int c) {
            return getValueAt(0, c).getClass();
        }

    }

    public static void main(String[] args) {
        //Schedule a job for the event-dispatching thread:
        //creating and showing this application's GUI.
        javax.swing.SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                new SlideCatalog();
            }
        });
    }
}

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions