Compiler is creating extra class files with $ in them

1.1k Views Asked by At

I'm using Eclipse and I've written a Java application using SWT. When Eclipse compiles my program, it renames my main file into 4 different files like this:

  • MainFile.class
  • MainFile$1.class
  • MainFile$2.class
  • MainFile$3.class

When I go to run this program from command line, I get

Could not find the main class: MainFile.class. Program will exit.

I really don't understand why this is happening.

1

There are 1 best solutions below

4
On

The $ classes are for anonymous inner classes and perfectly normal.

Could we see the command line you ran? You probably need to write java MainFile instead of java MainFile.class.