My school recommends the summer after junior year. That way your scores are in and you don't have to worry about studying for it during your last semester.
If you're looking at doctorate programs, many application deadlines range from December 1 - February 1, so you don't want to take the GRE too late in your senior fall semester. Masters degree applications range from March 1 - June 1, so you'd have some extra time if you're considering those. This varies by subject of course, but I agree with the first response - worry about the GREs as you're going into your junior year. Right now you need to think about what else you can do to pad your application, such as internships, researching experiences, socializing with profs so you can get good recommendations. The GREs and GPA aren't the most important factors in your application. You want them to be good, but you also want to show off a lot more than that.
Also keep in mind that GRE scores are only good for 5 years, then you have to retake them. So you don't want to take them too early, then decide to take some time off after undergraduate school before applying to grad school, and then have to retake them.