Архив автора: adik

Как настроить прокси-сервер для работы с npm

npm прокси proxy settings

Работа с npm (Node Package Manager) может столкнуться с рядом проблем, если вы используете прокси-сервер в своей сети. Ошибки при установке пакетов, зависания при выполнении команд и проблемы с подключением к удалённым репозиториям могут быть вызваны неправильной настройкой прокси.

Когда вы работаете в корпоративной сети или в других средах с установленным прокси-сервером, доступ к внешним ресурсам, таким как npm registry, может быть ограничен или подвержен дополнительной проверке. Поэтому вам нужно правильно настроить npm, чтобы он мог работать через этот сервер.

Как проверить, работает ли ваш прокси?
Если вы столкнулись с ошибками при установке пакетов через npm, первое, что стоит сделать, — это проверить, использует ли ваш компьютер прокси. Для этого можно воспользоваться командой curl (если она установлена) или просто попробовать подключиться к внешнему ресурсу:

curl -I https://registry.npmjs.org

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

Настройка npm для работы через прокси
Установка прокси для HTTP и HTTPS
Для настройки прокси-сервера в npm необходимо использовать команды конфигурации. Прежде чем начать, убедитесь, что у вас есть информация о прокси-сервере, например, его адрес и порт.

Чтобы указать npm использовать прокси для HTTP и HTTPS, выполните следующие команды:

npm config set proxy http://<proxy-server>:<port>
npm config set https-proxy https://<proxy-server>:<port>
Замените <proxy-server> на адрес вашего прокси, а <port> — на номер порта.

Пример:

npm config set proxy http://192.168.1.1:8080
npm config set https-proxy https://192.168.1.1:8080
Эти команды скажут npm использовать указанный прокси-сервер для всех HTTP и HTTPS запросов.

Настройка аутентификации через прокси
Если ваш прокси-сервер требует аутентификацию (например, с использованием имени пользователя и пароля), вы можете указать эти данные в настройках npm.

Для этого используйте следующую команду:

npm config set proxy http://<username>:<password>@<proxy-server>:<port>
npm config set https-proxy https://<username>:<password>@<proxy-server>:<port>

Пример:

npm config set proxy http://user:password@192.168.1.1:8080
npm config set https-proxy https://user:password@192.168.1.1:8080
Вместо <username> и <password> вставьте свои учетные данные, которые требуются для подключения через прокси.

Настройка для работы без проверки SSL
В некоторых случаях прокси-сервер может мешать проверке SSL-сертификатов, что приведет к ошибке «unable to verify the first certificate». В этом случае можно отключить проверку SSL для npm, используя следующую команду:

npm config set strict-ssl false
Это полезно, если вы доверяете своему прокси-серверу, но он не имеет корректных SSL-сертификатов.

Проверка настроек
После настройки прокси-сервера, вы можете проверить, что npm правильно применяет ваши конфигурации. Для этого выполните команду:

npm config list
Она отобразит текущие настройки npm, включая настройки прокси. Убедитесь, что адреса прокси и порты указаны правильно.

Установка пакетов через прокси
Теперь, когда вы настроили npm для работы с прокси, можно попробовать установить пакеты. Для этого используйте стандартную команду npm install, например:

npm install <package-name>
Если настройки прокси правильные, npm должен подключиться к репозиторию и успешно скачать необходимые пакеты.

Дополнительные настройки
Прокси для репозитория npm
Если вам нужно изменить URL-адрес репозитория npm (например, для использования внутреннего зеркала), используйте команду:

npm config set registry https://<registry-url>

Пример:

npm config set registry https://registry.npmjs.org

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

npm config set //registry.npmjs.org/:_authToken=<your-auth-token>

Заключение
Настройка npm для работы с прокси-сервером — это важный шаг для обеспечения стабильности работы в закрытых или защищённых сетях. Используя описанные методы, вы сможете настроить правильную работу npm через прокси, избежать ошибок при установке пакетов и обеспечить безопасность при подключении к удалённым репозиториям. Не забывайте проверять настройки и проводить тесты, чтобы убедиться в корректности работы.

Unable to verify the first certificate

При выполнении команды:

npm install

Выходит ошибка «failed, reason: unable to verify the first certificate».

Это значит что у вас не установлен нужный корневой сертификат. Если вы доверяете откуда скачиваете, то чтобы npm это игнорировал достаточно ввести команду.

npm config set strict-ssl false

После этого опять запустить install,

В Idea в windows в консоле не корректно отображается кириллица

Неверное отображение криллицей

В Idea появилась проблема, когда на windows в консоле не корректно отображается кириллица ( Вопросительные знаки вместо букв ???).

В Settings project encoding все заменил на UTF-8, в Gradle компиляцию в UTF-8 тоже указал, нечего из этого не помогло.

Удалось решить следующим способом проблему с кириллицей в консоле.

Help → Edit custom VM Options и вставить следующее:

-Dfile.encoding=UTF-8
-Dconsole.encoding=UTF-8

Также может помочь настройки как на скрине ниже

настройка Idea для кириллицы в консоле

SQL запрос Oracle поиска дубликатов по нескольким полям

sql Oracle поиск дубликатов

SQL запрос Oracle поиск дубликата записей по нескольким полям, можно использовать комбинацию функций GROUP BY и HAVING. Вот пример запроса:

SELECT field1, field2, field3, COUNT(*) AS count
FROM your_table
GROUP BY field1, field2, field3
HAVING COUNT(*) > 1;

В этом sql запросе вы должны заменить «your_table» на имя вашей таблицы, а «field1», «field2» и «field3» на имена полей, по которым вы хотите найти дубликаты.

Вы получите результат, в котором будут показаны значения полей и количество повторений. Только те записи, в которых количество повторений больше 1, будут включены в результат.

Через партиции

Для поиска дубликатов в Oracle можно использовать анализ партиций таблицы. Вот пример sql запроса, который может помочь вам найти дубликаты внутри партиций таблицы:

SELECT column1, column2, ..., columnN
FROM (
    SELECT column1, column2, ..., columnN,
        COUNT(*) OVER (PARTITION BY column1, column2, ..., columnN) AS duplicate_count
    FROM your_table
    )
WHERE duplicate_count > 1;

Замените your_table на имя вашей таблицы, а column1, column2, …, columnN на столбцы, по которым вы хотите искать дубликаты. Результатом будет список строк, содержащих дубликаты исходных данных.

Обратите внимание, что этот запрос проверяет дубликаты только в рамках партиций таблицы. Если вы хотите проверить все строки таблицы на дубликаты, вам нужно будет удалить часть (PARTITION BY column1, column2, ..., columnN).

Миграция с JUnit4 на JUnit Jupiter в Spring проекте.

SpringBootTest

В SpringBoot 2 уже встроена поддержка JUnit Jupiter, что упрощает нам миграцию c Junit4

Для этого нам надо в SpringBoot 2 надо в тестах убрать

Аннотацию @RunWith, заменить import, в которых фигурируют Test и различных Assert для тестов с Junit на Jupiter

Было

import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.test.context.junit4.SpringRunner;

@RunWith( SpringRunner.class )
@SpringBootTest
public class ExampleTest{

@Test
public void isTest(){
Assert.assertEquals(1,1)
}

Стало

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

@SpringBootTest
public class ExampleTest{

@Test
public void isTest(){
assertEquals(1,1)
}

Проверьте какие еще аннотации могут относится к Junit4 и исправьте их на Junit 5

JUNIT 4JUnit 5
@Before@BeforeEach
@After@AfterEach
@BeforeClass@BeforeAll
@AfterClass@AfterAll
@Ignore@Disable