Urban environments present significant challenges to global navigation satellite system (GNSS) positioning. GNSS signals are often obstructed by buildings and other obstacles, leading to reflection and diffraction, which cause major line-of-sight (LOS) and non-line-of-sight (NLOS) multipath positioning errors. We propose a new, precise GNSS positioning technique that can simultaneously mitigate LOS and NLOS multipath errors by rotating the GNSS antenna arm horizontally at a certain angular velocity. The key idea behind this technique is to use the antenna motion to mitigate the LOS multipath effect and detect the NLOS multipath signals. The relative carrier phase between the direct signal and the multipath signal frequently changes when a GNSS antenna is moving. As a result, the effect that the strong reflected signal affects the direct signal can be reduced. We use this characteristic to mitigate LOS multipath errors by generating antenna motion. By rotating a GNSS antenna, the Doppler frequency is produced by the antenna motion. If the received GNSS signal is the NLOS signal, the direction of incoming signals is different from that of direct signals. In this situation, the phase of the generated Doppler frequency will be different, and NLOS signals can be detected by comparison with the ideal Doppler frequency. We conducted an experiment to evaluate the proposed method. The positioning error of the proposed method using LOS multipath mitigation and NLOS exclusion by the rotating antenna was decreased from 18.96 to 2.83 m. In addition, the availability of GNSS positioning increased from 44.29 to 100%.