Największy sukces w karierze Johann Lienhart osiągnął w 1987 roku, kiedy wspólnie z Bernardem Rassingerem, Mario Traxlem i Helmutem Wechselbergerem zdobył brązowy medal w drużynowej jeździe na czas podczas szosowych mistrzostw świata w Villach. Był to jednak jedyny medal wywalczony przez niego na międzynarodowej imprezie tej rangi. W 1980 roku wystartował na igrzyskach olimpijskich w Moskwie, gdzie drużynowo zajął trzynaste miejsce, a wyścigu ze startu wspólnego nie ukończył. Najlepszy wynik olimpijski osiągnął w 1984 roku, kiedy na igrzyskach w Los Angeles był jedenasty w drużynowej jeździe na czas. Wystąpił także na rozgrywanych cztery lata później igrzyskach w Seulu, gdzie indywidualnie zajął 34. miejsce, a w drużynie był szesnasty. Na tych samych igrzyskach szesnaste miejsce zajął także w torowym drużynowym wyścigu na dochodzenie. Ponadto wygrał między innymi wyścig Wiedeń-Rabenstein-Gresten-Wiedeń w latach 1980, 1985 i 1987 oraz Niederoesterreich Rundfahrt w latach 1989-1990. Trzykrotnie zdobywał mistrzostwo kraju.