Multiple file submission in Java track

I was wondering whether the Java track supports submitting multiple files?

I was working on the Robot Simulator exercise on the track, made changes to both the Robot.java and Orientation.java and ran exercism submit src/main/java/Robot.java src/main/java/Orientation.java.

I can see an iteration with the changes in exercism, but the exercism shows compilation errors (gradle test runs just fine locally on my machine).

Which error are you getting on the online tests?

The error was:

[ERROR] COMPILATION ERROR : 
[ERROR] /tmp/solution/src/main/java/Robot.java:[21,34] cannot find symbol
  symbol:   method turnRight()
  location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[25,34] cannot find symbol
  symbol:   method turnLeft()
  location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[29,31] cannot find symbol
  symbol:   method advance(GridPosition)
  location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[36,46] cannot find symbol
  symbol:   method turnRight()
  location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[39,46] cannot find symbol
  symbol:   method turnLeft()
  location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[42,43] cannot find symbol
  symbol:   method advance(GridPosition)
  location: variable orientation of type Orientation
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:compile (default-compile) on project exercise: Compilation failure: Compilation failure: 
[ERROR] /tmp/solution/src/main/java/Robot.java:[21,34] cannot find symbol
[ERROR]   symbol:   method turnRight()
[ERROR]   location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[25,34] cannot find symbol
[ERROR]   symbol:   method turnLeft()
[ERROR]   location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[29,31] cannot find symbol
[ERROR]   symbol:   method advance(GridPosition)
[ERROR]   location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[36,46] cannot find symbol
[ERROR]   symbol:   method turnRight()
[ERROR]   location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[39,46] cannot find symbol
[ERROR]   symbol:   method turnLeft()
[ERROR]   location: variable orientation of type Orientation
[ERROR] /tmp/solution/src/main/java/Robot.java:[42,43] cannot find symbol
[ERROR]   symbol:   method advance(GridPosition)
[ERROR]   location: variable orientation of type Orientation
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

I’m pretty sure I added those methods to Orientation in the iteration…

I have a similar issue on the exercise yatch.

We are provided three files Yatch, YatchTest and YatchCategory. When I upload Yatch and YatchCategory, I have the same error (cannot find symbol) as if the changes were not taken into account.

Then I uploaded only Yatch now containing YatchCategory and then got the error: ```
duplicate class: YachtCategory

Everything is fine locally, seems like the initial YatchCategory file is never replaced.

Thanks for any help, have a good day!

What happens if you submit all three files? Or run the exercism submit without specifying filenames?

In my case (in Robot simulator), if I run exercism submit without specifying names and go to the editor on the web interface, I only see the Robot.java tab with my changes. Here is a screenshot of what I see:

It is as if only Robot.java got submitted.

However, if I run with all files exercism submit src/main/java/GridPosition.java src/main/java/Orientation.java src/main/java/Robot.java, all the files appear in the editor, although the tests fail.

It is like the files are submitted, but the tests won’t run with the submitted changes (the exercism starts with a version of the Orientation class).

I noticed the config.json lists just Robot.java for the solution in the Robot simulator exercism. Would Orientation.java need to get added for it to run with changes to Orientation.java?

I haven’t done the Yacht exercise on the Java track yet, but it has only Yacht.java for the solution in its `config.json’.