И если вы хотите избежать перезагрузки приложения, вы можете переместить раздел appSettings
:
<appSettings configSource="Config\appSettings.config"/>
в отдельный файл. И в комбинации с ConfigurationSaveMode.Minimal
var config = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("~");
config.Save(ConfigurationSaveMode.Minimal);
вы можете продолжать использовать секцию appSettings
в качестве хранилища для различных параметров без перезапуска приложения и без использования файла с другим форматом, чем нормальный раздел appSettings.
Вы можете пометить эти зависимости как предоставленные:
<dependency>
<groupId>xerces</groupId>
<artifactId>xerces</artifactId>
<version>2.4.0</version>
<scope>provided</scope>
</dependency>
Таким образом maven добавит их в путь к классам компиляции, но будет не упаковывать их. Предполагается, что они существуют в вашем контейнере сервлетов.
См. Дополнительные сведения о maven scopes здесь в разделе «scope»
Edit Если вы хотите удалить классы, добавленные через транзитивные зависимости, вы можете исключить их из зависимости следующим образом:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.6</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
(взято из этот ответ )
Подробнее здесь
Я исправил это.
Перечитав ссылку с немного большей осторожностью, я обнаружил, что элемент PackageExcludes должен иметь вид warSourceExcludes .
]Насчет исключения переходных зависимостей, я думаю, что это не работает с переходными зависимостями, и я думаю, что это может быть так.
Например, добавить зависимость hibernate-core -> dom4j -> xml-apis, если добавить исключение xml-apis рядом с вашим hibernate-core, все равно добавить xml-apis...