Janie shot Tea Cake because since he had already helped find her horizon, she didnt really need much of him anymore. Also since he tried killing her, Janie shouldn't have to live with the risk of being killed and hurt just like her marriage with Joe.
This is an interesting way of looking at Janie's decision to shoot Tea Cake. Dalia, you suggest that there was a need for Tea Cake in her life as if she were using him. I find that perplexing considering that it didn't even seem as if Janie realized what Tea Cake had done for her search for love until after he was gone. I would have to respectfully disagree with what you suggest and further suggest that she shot him because she loved him. Janie watched Tea Cake at his best and it was harder for her to watch him at such a low point, where he was not only dangerous to himself, but also to her. She killed him out of fear and had to sacrifice love for her own life.
I strongly disagree with Dalia's answer because I do not believe the reason that Janie shot Tea Cake was because she had already got what she wanted from him but for love. I saw this action as a sign of strength and courage. It could'nt of been easy for Janie to kill her true love. She did this not only because her own life was in danger but also to put Tea Cake out of his misery. This action defined her true love.