I've always thought I should use "for ages" when, for example, I meet a person who I haven't seen for a long time, but recently I came across another expression, "in ages," as in "I haven't seen you in ages."
Is it correct to say this?
While both for and in could be used in the statement you have, in seems to be more prevalent in current usage. However, Google Ngrams indicates that this was not the case always. The use of for in this sentence has declined over time in favour of in.
PS: This is only with reference to negative sentences. Only for is suitable in positive sentences, as John Lawler's comment on polarity item states.