1e/ yeah, Runtime was the first thing that came up from stackoverflow. I assume you'd use that.
2e/ IMO have them load it one-time with a browse tool. Save it to a txt file or cache it through some other means.
3e/ I haven't looked into java libs for MPQ's. However, you may want to look into:
https://code.google.com/p/pscript-l...va?r=a5d791ba707195220e80aeeafe236c613725b119
Or look at the WurstScript github:
https://github.com/peq/WurstScript
It runs MPQCL.exe to extract/import files. I don't know if it caches the entire thing or not though--AFAIK it was intended for maps; not sure how it runs when loading the war3.mpq.
PitzerMike also made some extensions that handle exporting and importing into mpq's (using SFMPQ). Look into grim extensions (included in JNGP). It has command line support too--just check out GrimExt documention.html.