Asafa Powell capitalized on Usain Bolt's weak start and edged the world-record holder by one-hundredth of a second, leading from start to finish in the 100 meters at the DN Galan meet on Tuesday.
Powell, the former world-record holder, won their highly anticipated rematch in 9.88 seconds. Bolt, who was slow out of the blocks, nearly caught his fellow Jamaican at the finish line. Third went to Norwegian Jaysuma Saidy Ndure in 10.06.
The win was a measure of revenge for Powell, after losing to his close friend Bolt at Jamaica's Olympic Trials last month.
"I was really happy with the race," Powell said. "My goal was to win. My start was quick and fast. And the speed stayed with me through the finish.
"I'm really looking forward to the Olympics."
Bolt set the world record of 9.72 in New York on May 31, breaking Powell's mark of 9.74.
It was Powell's third straight win at Olympic Stadium. Last year, he won in 10.04. In 2006, he set the stadium record of 9.86.
Earlier, Dayron Robles missed his world 110-meter record by just 0.04 seconds, winning the race in 12.91.
The Cuban, who set the world record last month in Ostrava, Czech Republic, beat four Americans in the race. David Oliver (13.04) and Aries Merritt (13.33) also made the podium.
For setting a new Olympic Stadium record, Robles earned a a 1-carat diamond worth $10,000.
Robles' time is the fourth fastest in history, tied with Colin Jackson of Britain. Liu Xiang of China ran a 12.88 and Dominique Arnold of the United States clocked 12.90 in 2006.
Olympic champion Jeremy Wariner won his third straight 400-meter race, but failed to improve the stadium record he set last year.
The American eased up near the finish and crossed in 44.29. It was 0.39 off his meet record that earned him a diamond last year.
Running in nearly perfect conditions, Wariner took the lead early in the one-lap race and was unchallenged the rest of the way.
"I went for victory today," he said. "It's a good winning time. Now I'm going home for tough training before the Olympics."
Chris Brown of the Bahamas finished second in 44.53 and Ricardo Chambers of Jamaica third in 44.84.
Abubaker Kaki, a 19-year-old from Sudan, picked up the first diamond of the evening by winning the 1,000 meters in 2:13.93. He also got his named engraved on a large silver trophy, the Dickson Trophy, that was first contested in a mile race in 1895.
"It was my first 1,000 (outdoors) ever," Kaki said. "I tried to beat the world record, but it's very hard to beat. Still, I'm very happy with my performance."
Previous winners of the Dickson Trophy include British great Sebastian Coe, the London Olympic 2012 chairman who watched the race from the stands as a guest of honor, John Walker of New Zealand, Filbert Bayi of Tanzania, and Said Aouita of Morocco.
Saad Youssef Kamel of Bahrein finished second behind Kaki in 2:14.72, and Yuriy Borzakovskiy of Russia third in 2:15.50.
Craig Mottram of Australia won the 3,000 in 7:37.73, nearly a second ahead of runner-up Isaac Songok of Kenya.
"It was a good race," Mottram said. "I didn't care much about the time. I just arrived from Australia. I was a bit unsure about my shape."