В прошлых опытах я сохранил источник изменений базы данных управляемым таким способом, которым для каждого выпуска продукта любые изменения базы данных всегда задавались сценарием и хранились в выпуске, что мы продолжаем работать. Процесс сборки на месте автоматически принес бы базе данных до текущей версии на основе таблицы в базе данных, которая сохранила текущую версию для каждого "приложения". Пользовательское .net служебное приложение, которое мы записали, тогда выполнит и определит текущую версию базы данных и выполнит любые новые сценарии против него в порядке чисел префикса сценариев. Тогда мы выполнили модульные тесты, чтобы удостовериться, что все было всей пользой.
Мы сохранили бы сценарии в управлении исходным кодом следующим образом (структура папок ниже):
я немного ржав на текущих соглашениях о присвоении имен по таблицам и хранимых процедурах, таким образом пустых с моим примером...
[корень]
[приложение]
[версия]
[сценарий]
\scripts
MyApplication \
1.2.1 \
001. MyTable. Create.sql
002. MyOtherTable. Create.sql
100.dbo.usp. MyTable. GetAllNewStuff.sql
С использованием таблицы Versions, которая приняла бы во внимание Приложение и Присвоила бы версию приложению, восстановит еженедельное производственное резервное копирование и выполнит все сценарии, необходимые против базы данных начиная с текущей версии. При помощи .net мы легко смогли упаковать это в транзакцию и если бы что-нибудь перестало работать, то мы откатывали бы и послали бы электронные письма, таким образом, мы знали, что выпуск имел плохие сценарии.
Так, все разработчики удостоверились бы, что поддержали это в управлении исходным кодом, таким образом, скоординированный выпуск удостоверится, что все сценарии, которые мы планируем выполнить против базы данных, работали бы успешно.
Это - вероятно, больше информации, чем Вы искали, но она работала очень хорошо на нас, и, учитывая структуру было легко получить всех разработчиков на борту.
, Когда день выпуска пришел, операционная команда будет следовать информации о версии и поднимать сценарии с управления исходным кодом и выполнять пакет против базы данных с .net приложением, которое мы использовали во время ночного процесса сборки, который автоматически упакует сценарии в транзакциях поэтому, если бы что-то перестало работать, то это автоматически откатывало бы, и никакое влияние на базу данных не оказалось.
Найдено решение:
Решение № 1:
Проблема с прокси в файле settings.xml:
<host>webproxy</host>
для получения хоста Перейдите в IE-> Инструменты-> Связь-> Настройки локальной сети-> Дополнительно-> http.
=====
Решение № 2:
, если задан автоматически настроенный прокси-сервер: затем
1> открыть IE (или любой браузер)
2> получить URL-адрес из вашего браузера через IE-> Сервис-> интернет-опция-> подключения-> Настройки LAN-> получить адрес и указать URL-адрес, например: as http: //autocache.abc.com/ и введите, файл будет загружен в формате .pac, сохранен на рабочий стол
3> откройте файл .pac в textpad, определите PROXY:
В вашем редакторе это будет выглядеть примерно так:
return "PROXY web-proxy.ind.abc.com:8080; PROXY proxy.sgp.abc.com:8080";
4> перейдите в Maven settings.xml и введите как:
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<host>web-proxy.ind.abc.com</host>
<port>8080</port>
</proxy>
5> run mvn: install через командную строку или через eclipse.
=====
Решение № 3:
При любых других проблемах удалите локальный репозиторий maven и снова запустите mvn: install .
Я только что скопировал файл setting.xml, находящийся в каталоге "\ apache-maven-3.1.1 \ conf", в каталог "$ {user.home} /. M2 /)" Windows-машины и изменил требуемый прокси настройка в соответствии с моей сетью, как показано ниже, и это сработало для меня.
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<host>www-proxy.xxxx</host>
<port>8080</port>
</proxy>
Спасибо - Камран Шахзад