Где файлы jar, кэшированные для приложений Java Web Start / JNLP? - PullRequest
17 голосов
/ 05 октября 2009

Где находятся файлы JAR, кэшированные для приложений Java Web Start / JNLP?

Ответы [ 6 ]

25 голосов
/ 05 октября 2009

Это зависит ... от вашей ОС и виртуальной машины, например ::100100

  • с Sun JDK 1.5 и Windows XP: 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
  • с Sun JDK 1.6 и GNU / Linux: /home/userid/.java/deployment/cache/6.0
  • с Sun JDK 1.6 и Mac OS X: ~/Library/Caches/Java/cache/6.0/

В Sun JDK 6 это можно настроить через панель управления Java (временные файлы Интернета Настройки на вкладке Общие ).

10 голосов
/ 05 октября 2009

В Windows Vista или 7 он находится в %AppData%\LocalLow\Sun\Java\Deployment\cache.

3 голосов
/ 23 июля 2012

для Ubuntu и других дистрибутивов Linux на основе Debian, использующих icedtea: /home/USER/.icedtea/cache

в случае, если вы хотите просто очистить кеш javaws -uninstall не будет работать. javaws -Xclearcache делает работу для icedtea.

2 голосов
/ 05 октября 2009

В JNLP есть нечто большее, чем просто реализация Sun.

Пакеты OpenJDK, поставляемые Debain, например, комплект netx , который хранит свои файлы в ~/.netx/cache/. Запись Википедии содержит список известных реализаций, отличных от Sun.

Вы действительно не должны полагаться на то, что этот путь хорошо известен в коде вашего приложения.

1 голос
/ 30 марта 2016

Если вас также интересует содержимое jar-файлов в кэше JNLP, вы можете использовать следующий скрипт (протестирован в Mac OS X) для проверки jar-файлов с помощью jar -tvf:

#!/bin/bash
#   Author: WF
# see /992323/gde-faily-jar-keshirovannye-dlya-prilozhenii-java-web-start-jnlp

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
0 голосов
/ 19 января 2015

Вы можете легко просматривать или удалять (удалять) ваши приложения Java WebStart. Это можно сделать с помощью панели управления Java, как описано ниже. http://www.ngs.ac.uk/ukca/certificates/certwizard/clearwebstartcache

...