Подсказки для поддержания внутреннего Репозитория Знатока?

Я посмотрел на ваш код, а вы разбили его на две колонки на iOS и устройствах, поддерживающих медиазапросы. В Android 4.1 появилось обновление движка рендеринга, и блок отображения на td перестал работать. Блок отображения, однако, работает на th.

Я только изменил td на th и добавил нормальный вес шрифта к вашему коду.

	/* Some resets and issue fixes */
	#outlook a { padding:0; }
	body{ width:100% !important; margin:0; padding:0; }
	.ReadMsgBody { width: 100%; }
	.ExternalClass {width:100%;}
	.backgroundTable {margin:0 auto; padding:0; width:100%;!important;}
	table td {border-collapse: collapse;}
	.ExternalClass * {line-height: 115%;}
	div[style*=margin: 16px 0;]{
	margin:0 !important;
	}

	@media screen and (max-width: 630px){
	*[class="100p"] {width:100% !important; height:auto !important;}
	*[class="condensed"] {padding-bottom:20px !important; display: block; width:100% !important; text-align: center !important;}
	*[class="center"] {text-align:center !important; width:100% !important; height:auto !important;}
	*[class="100padleftright"] {width:100% !important; padding:0 20px 0 20px;}
	*[class="100padtopbottom"] {width:100% !important; padding:20px 0px 20px 0px;}
	}
<table><tr>
            <td align="center" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;" valign="top">
            <table border="0" cellpadding="0" cellspacing="0" class="100padtopbottom" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;background-color: #F4F4F4;border-top: 1px solid #FFFFFF;border-bottom: 1px solid #CCCCCC;border-collapse: collapse !important;" width="100%">
                <tbody>
                    <tr>
                        <th align="center" class="condensed" style="padding-top: 20px;-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;width: 260px;font-weight:normal;" valign="top">
                        <table border="0" cellpadding="20" cellspacing="0" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;border-collapse: collapse !important;" width="100%">
                            <tbody>
                                <tr>
                                    <td class="100padleftright" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;color: #505050;font-family: Helvetica;font-size: 14px;line-height: 150%;padding-top: 0;padding-right: 20px;padding-bottom: 20px;padding-left: 20px;text-align: center;"><img align="center" class="columnImage" src="https://www.skirball.org/sites/default/files/styles/content_desktop/public/social_good_salon_hotel_usa.jpg?itok=uKMG5iih&amp;timestamp=1500073852" style="width:100%;max-width: 260px;-ms-interpolation-mode: bicubic;border: 0;height: auto;line-height: 100%;outline: none;text-decoration: none;display: inline;" width="260"></td>
                                </tr>
                                <tr>
                                    <td class="100padleftright" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;color: #505050;font-family: Helvetica;font-size: 14px;line-height: 150%;padding-top: 0;padding-right: 20px;padding-bottom: 20px;padding-left: 20px;text-align: left;" valign="top">
                                    <h3 style="display: block;font-family: Helvetica;font-size: 16px;font-style: italic;font-weight: normal;line-height: 100%;letter-spacing: normal;margin-top: 0;margin-right: 0;margin-bottom: 10px;margin-left: 0;text-align: left;color: #606060 !important;">Social Good Salon</h3>
                                    The Skirball’s Social Good Salons are regular gatherings where people of all backgrounds and ages are welcome to learn about current events and socially relevant topics and then exchange ideas and opinions. At this salon, begin by watching the New York Times Op-Doc Hotel U.S.A. (2017)—Andrea Meller and Marissa Pearl’s short about the exciting and bewildering experience of a refugee’s very first night in the United States. After the screenings, participate in a facilitated small group discussion of the film’s themes, while enjoying complimentary coffee, tea, and cookies.<br>
                                    <a href="https://www.skirball.org/programs/words-and-ideas/social-good-salon" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;color: #EB4102;font-weight: normal;text-decoration: underline;" target="_blank">See more details here!</a></td>
                                </tr>
                            </tbody>
                        </table>
                        </th>
                        <th align="center" class="condensed" style="padding-top: 20px;-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;width: 260px;font-weight:normal;" valign="top">
                        <table border="0" cellpadding="20" cellspacing="0" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;border-collapse: collapse !important;" width="100%">
                            <tbody>
                                <tr>
                                    <td class="100padleftright" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;color: #505050;font-family: Helvetica;font-size: 14px;line-height: 150%;padding-top: 0;padding-right: 20px;padding-bottom: 20px;padding-left: 20px;text-align: center;"><img class="columnImage" src="https://www.skirball.org/sites/default/files/styles/content_desktop/public/17.8-pst-free-days.jpg?itok=72B9pnSU&amp;timestamp=1504731793" style="width:100%; max-width: 260px;-ms-interpolation-mode: bicubic;border: 0;height: auto;line-height: 100%;outline: none;text-decoration: none;display: inline;" width="260"></td>
                                </tr>
                                <tr>
                                    <td class="100padleftright" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;mso-table-lspace: 0pt;mso-table-rspace: 0pt;color: #505050;font-family: Helvetica;font-size: 14px;line-height: 150%;padding-top: 0;padding-right: 20px;padding-bottom: 20px;padding-left: 20px;text-align: left;" valign="top">
                                    <h3 style="display: block;font-family: Helvetica;font-size: 16px;font-style: italic;font-weight: normal;line-height: 100%;letter-spacing: normal;margin-top: 0;margin-right: 0;margin-bottom: 10px;margin-left: 0;text-align: left;color: #606060 !important;">LA Free Day</h3>
                                    On October 28, enjoy complimentary admission to view the Skirball’s Pacific Standard Time: LA/LA exhibitions, <a href="https://www.skirball.org/exhibitions/another-promised-land-anita-brenners-mexico" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;color: #EB4102;font-weight: normal;text-decoration: underline;" target="_blank">Another Promised Land: Anita Brenner’s Mexico</a> and <a href="https://www.skirball.org/exhibitions/surface-tension-ken-gonzales-day" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;color: #EB4102;font-weight: normal;text-decoration: underline;" target="_blank">Surface Tension by Ken Gonzales-Day: Murals, Signs, and Mark‐Making in LA.</a><br>
                                    For a list of all PST: LA/LA institutions in the West LA and Valley region participating in this FREE day, visit <a href="http://www.pacificstandardtime.org/" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;color: #EB4102;font-weight: normal;text-decoration: underline;" target="_blank">pacificstandardtime.org</a>.<br>
                                    <br>
                                    <a href="https://www.skirball.org/programs/special-event/pacific-standard-time-lala-free-day-west-la-and-valley-region" style="-webkit-text-size-adjust: 100%;-ms-text-size-adjust: 100%;color: #EB4102;font-weight: normal;text-decoration: underline;" target="_blank">Check it Out Here!</a></td>
                                </tr>
                            </tbody>
                        </table>
                        </th>
                    </tr>
                </tbody>
            </table>
            <!-- // END COLUMNS --></td>
        </tr>
        </table>

Надеюсь, что это работает для вас.

29
задан cwash 17 February 2014 в 20:46
поделиться

7 ответов

Я бы рекомендовал настроить один сервер нексуса как минимум с четырьмя репозиториями. Я бы не рекомендовал артефактор. Бесплатная версия nexus отлично подходит для команды разработчиков из менее 20 человек и менее чем из трех групп. Если у вас больше пользователей, сделайте себе одолжение и заплатите за выпуск Sonatype. Интеграция LDAP окупается.

  1. Внутренний выпуск
  2. Внутренний снимок
  3. Внутренний сторонний код для внутреннего кода, который поступает из внешних источников, или для одобренных сторонних версий. Поместите сюда драйверы JDBC, javax. * И прочее от клиентов и партнеров.
  4. Внешние прокси общий прокси для всех обычных источников, таких как m2, codehaus и т. д.

Настройте Nexus для выполнения следующих действий для внутренних репозиториев.

  1. Удаляйте старые снимки через равные промежутки времени
  2. Удаляйте снимки в выпуске
  3. Создавайте файлы индекса. Это также ускоряет локальные сборки.

Иметь общий файл settings.xml, который использует эти четыре и только эти четыре источника. Если вам необходимо выполнить дополнительные настройки, постарайтесь сохранить общую часть файла настроек и использовать профили для различий. Не позволяйте вашим клиентам просто изменять свои собственные настройки, иначе вы получите код, который строится на одной машине, но не на любой другой.

Предоставьте общий прокси для ваших клиентов. В Nexus вы можете добавить несколько прокси к общим источникам Maven (Apache, JBoss, Codehaus) и иметь один прокси, доступный для внутренних клиентов. Это значительно упрощает добавление и удаление источников для ваших клиентов.

Не смешивайте внутренние и сторонние артефакты в одном репозитории. Nexus позволяет добавлять баночки во внутренний репозиторий через веб-интерфейс. Я рекомендую это как способ добавления драйверов JDBC и другого внешнего кода к сторонним разработчикам. Пользовательский интерфейс довольно удобен в использовании по сравнению с большинством корпоративного программного обеспечения .

Определите общий родительский POM , который определяет внутренний моментальный снимок и выпуск репозиториев, через тег distributionManagement . Я знаю, что многие люди говорят тебе не делать этого. И хотя я открыто признаю, что с этим возникают всевозможные проблемы, все работает нормально, если клиенты будут создавать только выпуски и снимки состояния для развертывания в едином внутреннем репозитории.

Если у вас есть существующий неправильно управляемый репозиторий Maven , создайте пятый репозиторий под названием Legacy и поместите туда все репозитории. Настройте задачу cron для удаления старых файлов из устаревших, когда им исполнится год. Это дает каждому год, чтобы отказаться от него и обновить свои помпы.

Установите простой порядок именования внутренних артефактов. Я предпочитаю GroupID Department.Function.Project и ArtifactId для этого componentName . Для внутренних репозиториев com / org / net и название компании, скорее всего, не имеют значения. И неправильно, если компания меняет название. Менее вероятно переименование отдела продаж, бухгалтерии или инвентаризации.

Настройте задачу cron для удаления старых файлов из устаревших, когда им исполнится год. Это дает каждому год, чтобы отказаться от него и обновить свои помпы.

Установите простой порядок именования внутренних артефактов. Я предпочитаю GroupID Department.Function.Project и ArtifactId для этого componentName . Для внутренних репозиториев com / org / net и название компании, скорее всего, не имеют значения. И неправильно, если компания меняет название. Менее вероятно переименование отдела продаж, бухгалтерии или инвентаризации.

Настройте задачу cron для удаления старых файлов из устаревших, когда им исполнится год. Это дает каждому год, чтобы отказаться от него и обновить свои помпы.

Установите простой порядок именования внутренних артефактов. Я предпочитаю GroupID Department.Function.Project и ArtifactId для этого componentName . Для внутренних репозиториев com / org / net и название компании, скорее всего, не имеют значения. И неправильно, если компания меняет название. Менее вероятно переименование отдела продаж, бухгалтерии или инвентаризации.

Проект и ArtifactId для этого componentName . Для внутренних репозиториев com / org / net и название компании, скорее всего, не имеют значения. И неправильно, если компания меняет название. Менее вероятно переименование отдела продаж, бухгалтерии или инвентаризации.

Проект и ArtifactId для этого componentName . Для внутренних репозиториев com / org / net и название компании, скорее всего, не имеют значения. И неправильно, если компания меняет название. Менее вероятно переименование отдела продаж, бухгалтерии или инвентаризации.

28
ответ дан 28 November 2019 в 01:34
поделиться

Я использую Artifactory сам, и мне нравится пользовательский интерфейс и простота развертывания / обслуживания. Тем не менее, я никогда не использовал Nexus и не могу помочь вам в правильном сравнении функций.

Вот некоторые вещи, которые мне очень нравятся в Artifactory (имейте в виду, что в Nexus могут быть и эти функции):

  1. Хороший интерфейс Web 2.0.
  2. Возможность импортировать ваш локальный репозиторий Maven, чтобы помочь вам начать работу.
  3. Простота интеграции с существующими серверами LDAP для обеспечения безопасности (я большой поклонник единого хранилища для хранения учетных данных).

Учитывая, что на самом деле существует только две основные реализации репозитория Maven, если вы действительно хотите убедиться, что сделали правильный выбор, я бы рекомендовал попробовать оба варианта и решить для себя, какой вам больше нравится .

4
ответ дан Jack Leow 28 November 2019 в 01:34
поделиться

Что-то еще, чтобы рассмотреть:

http://archiva.apache.org/

3
ответ дан Brad 28 November 2019 в 01:34
поделиться

Обязательно используйте Nexus . : P

Я использовал и Nexus, и Artifactory. Интерфейс для Nexus намного надежнее, он гораздо более настраиваемый и, конечно же, написан Sonatype , который хорошо повторяет практически все, что есть в Maven.

При этом Artifactory достойный и работоспособный .

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

Используйте Artifactory .

4
ответ дан 28 November 2019 в 01:34
поделиться

Возможно, это очевидно, но для воспроизводимости разработчики никогда не должны перезаписывать артефакты, они должны быть новыми версиями.

Это также относится к исходным репозиториям. Если вы загрузите Apache-commons версии 1.2.3, вам действительно никогда не следует загружать его снова. Исправления относятся к более поздним версиям и не применяются к существующим версиям.

3
ответ дан 28 November 2019 в 01:34
поделиться

В качестве ОРИГИНАЛЬНОГО ВОПРОСА (технические вопросы, которые следует учитывать при создании репозитория M2), я бы рекомендовал создать пользователя только для чтения для просмотра репозитория и администратора для каждого администратора (при этом сказано: один пользователь только для чтения для всех пользователей, которые не являются администраторами). Более того, я бы рекомендовал периодически создавать резервные копии (возможно, раз в день?). Это очень важно, если ваш репозиторий большой или вы время от времени устанавливаете свои собственные артефакты.

И последнее, но не менее важное: при добавлении новых удаленных репозиториев вы должны добавить фильтры включения / исключения, чтобы поиск артефактов в репозитории был выполняется быстрее.

Есть много других проблем, которые следует учитывать, но это основные проблемы, с которыми я столкнулся при управлении внутренним репозиторием Maven.

Для записи, я использую и Nexus, и Artifactory; Я могу четко заявить, что, хотя Nexus очень прост и оперативен (хотя у меня иногда возникают проблемы с процессом установки на Ubuntu), его бесплатная версия не может конкурировать с (бесплатной) версией сообщества Artifactory. За исключением прекрасного пользовательского интерфейса Web 2 от Artifactory, его основные функции, такие как управление безопасностью, периодическое резервное копирование и проблемы с доступностью, намного превосходят возможности Nexus.

3
ответ дан 28 November 2019 в 01:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: