Java Web Start / JNLPアプリケーション用にキャッシュされたjarファイルはどこにありますか?
6 に答える
それは...あなたのOSと仮想マシンに依存します、例えば:
- Sun JDK1.5およびWindowsXPの場合:
C:\Documents and Settings\userid\Application Data\Sun\Java\Deployment\cache\javaws\
- Sun JDK 1.6およびVistaの場合:
C:\Users\userid\AppData\LocalLow\Sun\Java\Deployment\cache\6.0
- SunJDK1.6およびGNU/Linuxの場合:
/home/userid/.java/deployment/cache/6.0
- SunJDK1.6およびMacOSXの場合:
~/Library/Caches/Java/cache/6.0/
Sun JDK 6では、これはJavaコントロールパネル([全般]タブの[インターネットの一時ファイルの設定])から構成できます。
Windows Vistaまたは7では、にあり%AppData%\LocalLow\Sun\Java\Deployment\cache
ます。
icedteaを使用するubuntuおよびその他のDebianベースのLinuxディストリビューションの場合:/home/${USER}/.icedtea/cache
キャッシュをクリアしたいだけでは機能しjavaws -uninstall
ません。javaws -Xclearcache
icedteaの仕事をします。
JNLPキャッシュ内のjarの内容にも関心がある場合は、次のスクリプト(Mac OS Xでテスト済み)を使用して、jar-tvfを使用してjarファイルを調べることができます。
#!/bin/bash
# Author: WF
# see http://stackoverflow.com/questions/1517350/where-is-the-jar-files-cached-for-java-web-start-jnlp-applications
os=`uname`
case $os in
# Mac OS X
Darwin*)
jnlpcache="$HOME/Library/Application Support/Oracle/Java/Deployment/cache/6.0"
;;
*)
echo "to make this script work for $os you might want to edit it" 1>&2
echo "and add a case option" 1>&2
echo "please copy your result back to the stackoverflow answer" 1>&2
exit 1
;;
esac
cd "$jnlpcache"
tmp="/tmp/jnlp$$"
for f in `find . -type f`
do
jar -tvf $f 2>/dev/null > $tmp
if [ $? -eq 0 ]
then
echo "found jar $f"
echo "it contains: "
cat $tmp
fi
done
rm $tmp
Java WebStartアプリケーションを簡単に表示またはクリア(アンインストール)できます。これは、以下で説明するようにJavaコントロールパネルを使用して実行できます。http://www.ngs.ac.uk/ukca/certificates/certwizard/clearwebstartcache