Où se trouvent les fichiers jar mis en cache pour les applications Java Web Start/JNLP?
Cela dépend ... de votre système d'exploitation et de votre machine virtuelle, par exemple:
C:\Documents and Settings\userid\Application Data\Sun\Java\Deployment\cache\javaws\
C:\Users\userid\AppData\LocalLow\Sun\Java\Deployment\cache\6.0
/home/userid/.Java/deployment/cache/6.0
~/Library/Caches/Java/cache/6.0/
Avec un Sun JDK 6, vous pouvez le configurer via le panneau de configuration Java (Fichiers Internet temporaires Paramètres dans l'onglet Général .
Sous Windows Vista ou 7, c'est dans %AppData%\LocalLow\Sun\Java\Deployment\cache
.
pour Ubuntu et les autres distributions Linux basées sur Debian utilisant icedtea: /home/USER/.icedtea/cache
au cas où vous voudriez simplement effacer le cache, javaws -uninstall
ne fonctionnerait pas. javaws -Xclearcache
fait le travail pour icedtea.
JNLP ne se limite pas à la mise en œuvre de Sun.
Les packages OpenJDK fournis par Debain, par exemple, bundle netx , qui stocke ses fichiers dans ~/.netx/cache/
. L'entrée de Wikipedia contient une liste des implémentations connues autres que celles de Sun.
Vous ne devriez vraiment pas compter sur le fait que ce chemin est bien connu dans le code de votre application.
Si le contenu des fichiers jar du cache JNLP vous intéresse également, vous pouvez utiliser le script suivant (testé sur Mac OS X) pour examiner les fichiers jar avec jar -tvf:
#!/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
Vous pouvez facilement afficher ou effacer (désinstaller) vos applications Java WebStart. Cela peut être fait à l'aide du panneau de configuration Java, comme décrit ci-dessous. http://www.ngs.ac.uk/ukca/certificates/certwizard/clearwebstartcache