This guide will walk you through the process of setting up your homework repository and importing it into Eclipse.
Before you begin, you need to make sure to go through the other setup guides first:
For every homework assignment, you will need to repeat these steps:
Setup your Github repository.
Find the homework assignment on Canvas. For example, go to the ArgumentMap assignment on Canvas for the first homework of the semester.
Click the Github Classroom invitation link and follow the instructions.
If this is your first time using Github Classroom, you will be prompted to select your USF username from the list. This makes sure we can associate your Github username with your grades in Canvas. You only need to complete this step once.
This process will create a private Github repository with the homework starter code that only you, the teacher assistants, and the instructor can access.
Setup your Eclipse project.
Once your repository is setup, you must import the homework as a Java Maven Project in Eclipse. See the Importing Eclipse Projects from Github guide for detailed steps.
When done, the “Package Explorer” view of your homework should look something like this:
Make sure you are in the “Java” perspective before moving on. This perspective allows you to run Java code. The “Git” perspective lets you view, but not run, Java code.
Verify you can run the JUnit tests on Eclipse locally.
The tests will be in the
javasubfolder. Right-click the test file and select “Run As” » “JUnit Test” from the menu.
That should open up the “JUnit” view automatically, which will look similar to this:
These are the tests you will need to pass for the homework. Most of the tests will fail the first time.
Commit and push changes to Github.
Make sure to drag files from the “Unstaged” to the “Staged” box and add a commit message. For example:
Click “Commit and Push” to make a checkpoint and push that checkpoint to Github. If you click “Commit” you only make a local checkpoint on your system.
Verify the Autograder Github Action ran properly.
Visit your repository on Github. Click the “Actions” tab to view all of the runs. There should be a run with the same name as your last commit.
Make sure the action finishes running. Here is an example of what a completed action looks like:
Scroll down in the “Summary” view to see the “Annotations” section. That will report the number of points your homework has earned so far:
For details on which tests failed, you need to drill into the “Autograding” output.
At this point, you should be able to start filling in the missing code, committing changes, and pushing those changes to Github.
Refer to the
TODO comments in the template code for specifics on what code to fill in or modify for the assignment. When modifying this code, keep in mind the following:
Do not modify any method or class declarations. For example, you cannot add or remove keywords like
staticor add a
throwskeyword to a method if one was not already included.
Do not modify methods that are already fully defined. For example, if a method is provided and has no
TODOcomments within the method definition, you may not modify that method.
Do not modify the test code. This includes any input or output files utilized by the test code.
You MAY add additional members, methods, and classes as needed to the code.
You MAY add comments to clarify code for yourself. You can add comments to already defined methods if you want.
You MAY change a
returnstatement in a method with a
TODOcomment as needed. (You may not change the return type in the method declaration, however.)
TODOcomments when you are done. This removes them from the “Tasks” view in Eclipse. If you want to keep the comment around, you can change the text
To receive full credit on any homework assignment, you must:
Pass all of the unit tests remotely. See the Homework Testing guide detailed steps. You will not receive full points if you are passing the tests locally but not remotely.
Commit your work often. Some assignments require a minimum number of commits! Consider making a commit after you complete every
TODOin the code or after you pass a new test.
Avoid warnings. Some assignments require the code to compile with no warnings to earn full points. Try to make sure your code is warning-free in Eclipse before testing your code remotely!
TODOdirections. For example, if the
TODOcomment stated you must use a
HashSetand your code does not, you could lose points even if you are passing all of the unit tests.
Post on CampusWire if you have any questions regarding what must be done for a homework assignment or a question about your homework grade.