Difference between revisions of "How To Submit"

From CMSC 420
(Step-by-step instructions. For CS seniors.)
(Add docs, submit script)
Line 9: Line 9:
 
# Right-click your project -> Properties -> Course Project Management -> check enable.  
 
# Right-click your project -> Properties -> Course Project Management -> check enable.  
 
* To submit: right-click the project and choose Submit.  You may get a weird message on your first submit, but it will still go through.
 
* To submit: right-click the project and choose Submit.  You may get a weird message on your first submit, but it will still go through.
 +
 +
[https://submit.cs.umd.edu:8443/docs/MarmosetHelp/StudentGuide/eclipseplugin.html Documentation on the Eclipse plugin] can be found on the submit server.
  
 
=== Method 2: Create a Jar file and Submit Via The Web ===
 
=== Method 2: Create a Jar file and Submit Via The Web ===
Line 22: Line 24:
 
# Click 'submit' under project 2 and upload the .jar file you just created.
 
# Click 'submit' under project 2 and upload the .jar file you just created.
  
You may find this [[Media:Export.xml|Ant build file]] useful for automating the process of creating a jar file.
+
 
 +
 
 +
You may find this [[Media:Export.xml|Ant build file]] useful for automating the process of creating a jar file.  Put it in your project root directory, then right-click it and choose Run As -> Ant Build.  It will create a file called meeshquest-part1-sp07-submission.jar in your project root directory, which you can then submit via the web.
  
 
== Hard-Core Command Line H4X0RZ ==
 
== Hard-Core Command Line H4X0RZ ==
Line 32: Line 36:
 
# <code>java -jar ~/bin/submit.jar</code>
 
# <code>java -jar ~/bin/submit.jar</code>
 
* The first time you submit it will ask you for your password.  After that, it will store a "one-time password" (which can be used as many times as you want for a given project) unencrypted in a text file called .submitUser in your project root directory.  414 Pop Quiz: is this good security?
 
* The first time you submit it will ask you for your password.  After that, it will store a "one-time password" (which can be used as many times as you want for a given project) unencrypted in a text file called .submitUser in your project root directory.  414 Pop Quiz: is this good security?
 +
* Prior to version 1.6, Java did not have a way to avoid echoing characters to the console as you typed them.  If you run the command line submission tool, you may see the characters of your password briefly echoed to the screen, and then erased.  You don't need 414 to know that that's not good security.
 +
* Want to know how the submissions work under the hood, while not exposing your password or storing it in plaintext on your hard drive?  Check out [[Media:Msubmit.zip]].  Also interesting as an example of things that just shouldn't be done in shellcode.
  
 
For less hard-core Unix hackers, see the [https://submit.cs.umd.edu:8443/docs/MarmosetHelp/StudentGuide/commandlinesubmission.html Marmoset command line submission documentation].
 
For less hard-core Unix hackers, see the [https://submit.cs.umd.edu:8443/docs/MarmosetHelp/StudentGuide/commandlinesubmission.html Marmoset command line submission documentation].

Revision as of 21:07, 1 April 2007

For any method, you will need to first download the starter files from the submit server. Under the projects main page, click 'download' under 'download starter files' for the appropriate project. You will need the .submit file in this archive.

Using Eclipse[edit]

Method 1: Course Project Manager Plugin[edit]

This is the easiest method; however, to use this method, your Eclipse project needs to be in CVS.

  1. Download and install the Course Project Manager Plugin for Eclipse.
  2. Ensure that you have the .submit file from the starter files in your project root directory, and that your project is under revision control using CVS.
  3. Right-click your project -> Properties -> Course Project Management -> check enable.
  • To submit: right-click the project and choose Submit. You may get a weird message on your first submit, but it will still go through.

Documentation on the Eclipse plugin can be found on the submit server.

Method 2: Create a Jar file and Submit Via The Web[edit]

You can also submit via the web. This method does not require your project to be in CVS.

  1. Right-click on your project, select Export...
  2. Choose Java -> Jar file (General -> Archive File will also work)
  3. Check only the .java files that you wrote for this assignment, as well as the .submit, .classpath, and .project files.
  4. Ensure 'Export java source files and resources' is checked; do not export anything else (clear the other Export checkboxes). You do not need to submit your .class files.
  5. Give the file a name and put it in a location you will remember.
  6. Click Next and then Finish.
  7. Navigate to the submit server in your browser.
  8. Click 'submit' under project 2 and upload the .jar file you just created.


You may find this Ant build file useful for automating the process of creating a jar file. Put it in your project root directory, then right-click it and choose Run As -> Ant Build. It will create a file called meeshquest-part1-sp07-submission.jar in your project root directory, which you can then submit via the web.

Hard-Core Command Line H4X0RZ[edit]

You can also submit from the command line using Marmoset's Java submission tool.

  1. Ensure your project root directory, let's call it projectroot, contains the .submit file.
  2. Download submit.jar to someplace you will remember; let's say ~/bin/
  3. cd projectroot
  4. java -jar ~/bin/submit.jar
  • The first time you submit it will ask you for your password. After that, it will store a "one-time password" (which can be used as many times as you want for a given project) unencrypted in a text file called .submitUser in your project root directory. 414 Pop Quiz: is this good security?
  • Prior to version 1.6, Java did not have a way to avoid echoing characters to the console as you typed them. If you run the command line submission tool, you may see the characters of your password briefly echoed to the screen, and then erased. You don't need 414 to know that that's not good security.
  • Want to know how the submissions work under the hood, while not exposing your password or storing it in plaintext on your hard drive? Check out Media:Msubmit.zip. Also interesting as an example of things that just shouldn't be done in shellcode.

For less hard-core Unix hackers, see the Marmoset command line submission documentation.