bvchess / taxman

Find solutions to the taxman game
MIT License
0 stars 0 forks source link

mvn install does not work — json not found #2

Open simlei opened 1 year ago

simlei commented 1 year ago

Hi,

Importing the project via mvn import into eclipse works fine; however, if I just do mvn install on the command line, the following is the output:

snuc@snuc-NUC8i7BEH:~/Documents/jct/taxman$ mvn install
[INFO] Scanning for projects...
[INFO] 
[INFO] -------------------------< org.taxman:taxman >--------------------------
[INFO] Building taxman 1.000
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-install-plugin/2.5.2/maven-install-plugin-2.5.2.pom
Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-install-plugin/2.5.2/maven-install-plugin-2.5.2.pom (6.4 kB at 4.7 kB/s)
Downloading from central: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-plugins/25/maven-plugins-25.pom
Downloaded from central: https://repo.maven.apache.org/maven2/org/apache/maven/plugins/maven-plugins/25/maven-plugins-25.pom (9.6 kB at 20 kB/s)
[INFO] 
[INFO] --- maven-resources-plugin:3.0.2:resources (default-resources) @ taxman ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Copying 1 resource
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.0:compile (default-compile) @ taxman ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:3.0.2:testResources (default-testResources) @ taxman ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/snuc/Documents/jct/taxman/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.8.0:testCompile (default-testCompile) @ taxman ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) @ taxman ---
[INFO] 
[INFO] -------------------------------------------------------
[INFO]  T E S T S
[INFO] -------------------------------------------------------
[INFO] Running org.taxman.h6.game.FactorTableTest
[INFO] Tests run: 9, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.067 s - in org.taxman.h6.game.FactorTableTest
[INFO] Running org.taxman.h6.game.OptimalResultTest
skipping output for OEIS format test because it's too verbose
[{"moves":[2],"n":2,"score":2},{"n":3,"score":3},{"moves":[3,4],"n":4,"score":7}]
[ERROR] Tests run: 4, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.106 s <<< FAILURE! - in org.taxman.h6.game.OptimalResultTest
[ERROR] get  Time elapsed: 0.102 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.game.OptimalResultTest.get(OptimalResultTest.java:37)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.game.OptimalResultTest.get(OptimalResultTest.java:37)

[INFO] Running org.taxman.h6.game.SolutionTest
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.06 s <<< FAILURE! - in org.taxman.h6.game.SolutionTest
[ERROR] display  Time elapsed: 0.06 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.game.SolutionTest.display(SolutionTest.java:13)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.game.SolutionTest.display(SolutionTest.java:13)

[INFO] Running org.taxman.h6.frame.GreedySolverTest
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.055 s <<< FAILURE! - in org.taxman.h6.frame.GreedySolverTest
[ERROR] doAFew  Time elapsed: 0.055 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.frame.GreedySolverTest.doOne(GreedySolverTest.java:27)
        at org.taxman.h6.frame.GreedySolverTest.doAFew(GreedySolverTest.java:37)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.frame.GreedySolverTest.doOne(GreedySolverTest.java:27)
        at org.taxman.h6.frame.GreedySolverTest.doAFew(GreedySolverTest.java:37)

[INFO] Running org.taxman.h6.frame.FrameSolverTest
playing n=85

C+D: {78, 76, 75, 70, 68, 66, 63, 52, 50, 45, 44} -> {39, 38, 35, 34, 33, 26, 25, 22, 21, 15, 14, 10, 9, 6, 4}
   remaining: {75, 63, 50, 45} -> {25, 21, 15, 14, 10, 9, 6, 4}
   freedoms: 4
   no downstream hives with space, could add to this hive

F: {84, 60, 56} -> {42, 30, 28, 20, 12, 8}
   remaining: {84, 60, 56} -> {42, 30, 28, 20, 12, 8}
   freedoms: 3
   could offer 3 to C+D from [8, 12, 20, 28, 30, 42]

G: {80, 72, 48} -> {40, 36, 24, 16}
   remaining: {80, 72, 48} -> {40, 36, 24, 16}
   freedoms: 1
   could offer 1 to F from [16, 24, 36, 40]

[ERROR] Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 0.113 s <<< FAILURE! - in org.taxman.h6.frame.FrameSolverTest
[ERROR] justOne  Time elapsed: 0.082 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.frame.FrameSolverTest.justOne(FrameSolverTest.java:98)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.frame.FrameSolverTest.justOne(FrameSolverTest.java:98)

[ERROR] medium  Time elapsed: 0.03 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.frame.FrameSolverTest.lambda$runRange$0(FrameSolverTest.java:21)
        at org.taxman.h6.frame.FrameSolverTest.runRange(FrameSolverTest.java:19)
        at org.taxman.h6.frame.FrameSolverTest.medium(FrameSolverTest.java:30)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.frame.FrameSolverTest.lambda$runRange$0(FrameSolverTest.java:21)
        at org.taxman.h6.frame.FrameSolverTest.runRange(FrameSolverTest.java:19)
        at org.taxman.h6.frame.FrameSolverTest.medium(FrameSolverTest.java:30)

[INFO] Running org.taxman.h6.oldsearch.TaskDataTest
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0 s - in org.taxman.h6.oldsearch.TaskDataTest
[INFO] Running org.taxman.h6.bombus.ApiaryTest
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.223 s <<< FAILURE! - in org.taxman.h6.bombus.ApiaryTest
[ERROR] theMysteryOf528  Time elapsed: 0.223 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.bombus.ApiaryTest.theMysteryOf528(ApiaryTest.java:23)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.bombus.ApiaryTest.theMysteryOf528(ApiaryTest.java:23)

[INFO] Running org.taxman.h6.search.SearchManagerTest
[ERROR] Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 0.108 s <<< FAILURE! - in org.taxman.h6.search.SearchManagerTest
[ERROR] testOneGame  Time elapsed: 0.084 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.search.SearchManagerTest.testOneGame(SearchManagerTest.java:60)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.search.SearchManagerTest.testOneGame(SearchManagerTest.java:60)

[ERROR] testFirst200  Time elapsed: 0.023 s  <<< ERROR!
java.lang.RuntimeException: failed loading json
        at org.taxman.h6.search.SearchManagerTest.testFirst200(SearchManagerTest.java:69)
Caused by: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828]
        at org.taxman.h6.search.SearchManagerTest.testFirst200(SearchManagerTest.java:69)

[INFO] Running org.taxman.h6.search.FrameSetTest
   frame #:  2  1  0
  freedoms:  1  3  4
promotions:  0  3  0
estimated max promotions in total: 3
4->8 {75, 63, 50, 45} -> {25, 21, 15, 14, 10, 9, 6, 4}
3->6 {84, 60, 56} -> {42, 30, 28, 20, 12, 8}
3->4 {80, 72, 48} -> {40, 36, 24, 16}
[INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.007 s - in org.taxman.h6.search.FrameSetTest
[INFO] Running org.taxman.h6.search.FrameTest
[INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.006 s - in org.taxman.h6.search.FrameTest
[INFO] Running org.taxman.h6.util.TxPicklerTest
[INFO] Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.211 s - in org.taxman.h6.util.TxPicklerTest
[INFO] Running org.taxman.h6.util.TxListTest
[INFO] Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.004 s - in org.taxman.h6.util.TxListTest
[INFO] Running org.taxman.h6.util.TxCompressorTest
[INFO] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.002 s - in org.taxman.h6.util.TxCompressorTest
[INFO] Running org.taxman.h6.util.TxSetTest
[INFO] Tests run: 15, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.01 s - in org.taxman.h6.util.TxSetTest
[INFO] 
[INFO] Results:
[INFO] 
[ERROR] Errors: 
[ERROR]   ApiaryTest.theMysteryOf528:23 » Runtime failed loading json
[ERROR]   FrameSolverTest.justOne:98 » Runtime failed loading json
[ERROR]   FrameSolverTest.medium:30->runRange:19->lambda$runRange$0:21 » Runtime failed ...
[ERROR]   GreedySolverTest.doAFew:37->doOne:27 » Runtime failed loading json
[ERROR]   OptimalResultTest.get:37 » Runtime failed loading json
[ERROR]   SolutionTest.display:13 » Runtime failed loading json
[ERROR]   SearchManagerTest.testFirst200:69 » Runtime failed loading json
[ERROR]   SearchManagerTest.testOneGame:60 » Runtime failed loading json
[INFO] 
[ERROR] Tests run: 58, Failures: 0, Errors: 8, Skipped: 0
[INFO] 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  4.684 s
[INFO] Finished at: 2023-01-14T15:52:55+11:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.22.2:test (default-test) on project taxman: There are test failures.
[ERROR] 
[ERROR] Please refer to /home/snuc/Documents/jct/taxman/target/surefire-reports for the individual test results.
[ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
[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
snuc@snuc-NUC8i7BEH:~/Documents/jct/taxman$ 
****
simlei commented 1 year ago
snuc@snuc-NUC8i7BEH:~/Documents/jct/taxman$ mvn --version
Apache Maven 3.8.3 (ff8e977a158738155dc465c6a97ffaf31982d739)
Maven home: /home/snuc/.sdkman/candidates/maven/current
Java version: 11.0.11, vendor: AdoptOpenJDK, runtime: /home/snuc/.sdkman/candidates/java/11.0.11.hs-adpt
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.15.0-58-generic", arch: "amd64", family: "unix"
bvchess commented 1 year ago

Hi Simon, thanks for reporting this. It looks like the same problem is happening over and over: com.squareup.moshi.JsonEncodingException: Unterminated array at path $[828] I take that to mean the json parser is failing at the 828th element when trying to read /optimal.json from taxman.jar (in the source as src/main/resources/optimal.json). I can reproduce the errors if I remove the comma from the end of line 829 in optimal.json.

Could you send attach the file target/taxman.jar to this issue? I'd like to see if optimal.json is damaged or if the problem has something to do with the code that tries to read the file.