What are the differences between MOJI and the official Perl client?
  • MOJI works cross-platform. Including Windows, where the original client requires some modifications to run properly.
  • MOJI is better suited for integration into an already existing online e-Learning system, especially if that system is Java based. It has exception handling and can be deployed using Maven.
  • MOJI, internally, uses directory mode only. This detail should be negligible if you are starting from scratch. But please keep it in mind when porting your application from the Perl client.
  • MOJI uses Java as its default language for programming sources.


What is the meaning of optN, optX, etc.?

Detailed explanations of these parameters can be found in the source code of the original client. Here is a short summary:

optC: Comment string. Will show up on the results page so different results can be distinguished from each other.

optD: Directory mode.

optM: Do not treat source code passage as plagiarism if it is found at least this many times. Supplies an easy way to detect base/template code.

optN: Defines how many matches to display on the results page.

optX: Experimental feature support. Set to 1 to use the experimental MOSS server.



Why are there runtime exceptions after compiling successfully?

If you get runtime exceptions, you are trying to call methods of the socket client in the wrong order -- for example by uploading files before authenticating with the server.