Как установить общий кэш

На самом деле в дополнение к Почте Юрия Зубарева

Когда вы передаете несуществующий XML-файл в парсер. Например, вы передаете

new File("C:/temp/abc")

, когда в вашей файловой системе существует только файл C: /temp/abc.xml.

В любом случае

builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
document = builder.parse(new File("C:/temp/abc"));

или

DOMParser parser = new DOMParser();
parser.parse("file:C:/temp/abc");

Все дают одно и то же сообщение об ошибке.

Очень неутешительная ошибка, потому что следующая трассировка

javax.servlet.ServletException
    at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
...
Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
... 40 more

ничего не говорит о факт «имя файла неверен» или «такой файл не существует». В моем случае у меня был абсолютно правильный xml-файл, и мне пришлось потратить 2 дня, чтобы определить реальную проблему.

7
задан Pini Reznik 23 September 2008 в 09:12
поделиться

3 ответа

Самое легкое решение: создайте новую группу (например, "devel") и сделайте всех членов разработчиков его. Дайте полномочия чтения-записи той группе на иерархии каталогов, где кэш сохраняется. Разработчики должны будут также зафиксировать свой umask.

2
ответ дан 7 December 2019 в 01:28
поделиться

Если бы Вы также используете связанный distcc, то проблемы разрешения в основном ушли бы, когда компиляции будут выполнены под, он - управление на любой ферме компиляции, размещает Вас набор.

Вы могли также включать настольные машины разработчиков среди хостов distcc, хотя за счет наличия некоторой дублированной работы, где файл будет потенциально скомпилирован больше чем на одной машине - хотя это никогда не возвращало бы устаревшее, скомпилировал объектный файл. Это также ускорило бы повседневные перекомпиляции.

1
ответ дан 7 December 2019 в 01:28
поделиться

См. Недавно написанный раздел Совместное использование кэша в руководстве ccache. По сути, используйте ту же настройку CCACHE_DIR , установите CCACHE_UMASK соответствующим образом и рассмотрите возможность использования CCACHE_BASEDIR .

6
ответ дан 7 December 2019 в 01:28
поделиться