Words ending in -able follow multiple pronunciation patterns
This is part of the more general phenomenon that English has many pairs of affixes or word parts that mean the same thing but have different forms because of the history of the language.
For example, un- and in- mean just about the same thing, but different words form a negation using one, both, or neither for complicated reasons.
The "productive" pattern (the pattern that is most easily applicable to newly formed words) for -able is to have the same pronunciation, including stress, in the adjective as in the related verb. For example, deˈgradable as in deˈgrade, exˈcludable as in exˈclude, reˈcyclable as in reˈcycle, and so on. (In this answer, I follow the IPA convention of marking stress with the sign ˈ placed before the stressed syllable.)
But in addition to words that follow this productive pattern, there are a number of words that follow other patterns that developed in earlier time periods. I think the age of the word revocable is the most important factor that contributed to the pronunciation ˈrevocable.
Stress evolved between Middle English and the present day
Revocable is not a newly formed word. It dates back to Middle English (the Oxford English Dictionary's dates its first citation to around 1500, and has a couple more from the 16th century; the antonym irrevocable is attested even earlier).
The stress pattern of words derived from Latin and French changed between Middle English and present-day English. In Middle English, it seems that words borrowed from French often had stress in the same position that present-day English speakers tend to hear it in French: either on the final syllable of a word, or the second-to-last syllable in cases where the word ends in a silent/mute "e" (which at the start of the Middle English period was not silent, but was pronounced as an unstressed vowel sound, the schwa [ə]). So in this period, we would find (ir)revocable pronounced as something like [i(r)revoˈkaːblə], and likewise, other adjectives ending in -able that were borrowed in the Middle English period probably had pronunciations at this time where the primary stress fell on the -a- of the suffix.
Here's a pair of lines from the prologue of the Canterbury Tales (written sometime around or before 1400) that shows that both the first and second a in charitable, as well as the ou in pitous, functioned as stressed syllables in Chaucer's English:
She was so charitable and so pitous
She wolde wepe, if that she saugh a mous
(Harvard's Geoffrey Chaucer Website, Middle English text taken from Larry D. Benson., Gen. ed., The Riverside Chaucer, Houghton-Mifflin Company; with permission of the publisher.)
The meter is iambic pentameter: here is my transcription in IPA of what the reconstructed Middle-English pronunciation would be, with a stress marker before each syllable that is stressed by the meter (not differentiating between primary and secondary stress):
[ʃeː ˈwas sɔː ˈtʃariˈtaːbl and ˈsɔː piˈtuːs]
[ʃeː ˈwoldə ˈweːp if ˈðat ʃeː ˈsawx a ˈmuːs]
When words like revocable and charitable shifted their stress to an earlier syllable, the change may have proceeded in some cases by converting a former secondary stress into the new primary stress. In English, secondary stresses coming before the primary-stressed syllable tend to be placed on alternating syllables, like this: [i(r).ˌre.vo.ˈkaː.blə]. So switching the position of the primary and secondary stresses would give us [i(r).ˈre.voˌkaː.blə]. In fact, in such cases the later, originally stressed syllable seems to have generally ended up becoming completely unstressed, with the vowel becoming short and reduced as a result, so by the time of present-day English we have [ɪˈrɛvəkəbl̩].
Analogy in modern English continues to affect stress patterns
The influence of other words, such as revocation, where the re- still has secondary stress to this day certainly may have supported the use of primary stress on the first syllable of revocable.
As mentioned in the comments, many old -able adjectives actually have, or have had, multiple pronunciations: one old one stressed on the second syllable before -able based on the historical stress-shifting process outlined above, and one newer one stressed on the first syllable before -able based on the modern productive rule (or on analogy with it: the position of stress has changed even in some adjectives like deˈspicable (older pronunciation ˈdespicable) and forˈmidable (older pronunciation ˈformidable) where there's no corresponding verbs *deˈspic or *forˈmid to serve as a base).
Comparable
interface in Java to me is always com-PAR-a-ble, not COMP-ra-ble.