Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
В /etc/subversion/servers
Вы - установка http-proxy-host
, которая не имеет никакого отношения svn://
, который соединяется с различным сервером, обычно работающим на порте 3 690 запущенных svnserve
команда.
, Если у Вас есть доступ к серверу, можно установить svn+ssh://
как объясненный здесь.
Обновление : Вы могли также попытаться использовать connect-tunnel
, который использует Ваш прокси-сервер HTTPS для туннельных соединений:
connect-tunnel -P proxy.company.com:8080 -T 10234:svn.example.com:3690
Тогда Вы использовали бы
svn checkout svn://localhost:10234/path/to/trunk
при использовании svn://URI, это использует порт 3690 и вероятно не будет использовать прокси HTTP
Если можно получить SSH к нему, Вы можете SSH переданный Порту сервер SVN.
Использование SSHs -L
(или -R
, я забываю, это всегда смущает меня) заставить ssh туннелировать так, чтобы
127.0.0.1:3690
действительно соединился с remote:3690 по туннелю ssh, и затем можно использовать его через
svn co svn://127.0.0.1/....
svn://не говорит http, для этого нет ничего, что прокси HTTP мог сделать.
Какая-либо причина, почему http не работает? Вы рассмотрели https? При реальной необходимости в нем у Вас, вероятно, должен быть порт 3 690 открытых в Вашем брандмауэре.
При использовании стандартной установки SVN svn://, соединение будет работать над tcpip портом 3690 и таким образом, будет в основном невозможно соединиться, если Вы не изменяете свою конфигурацию сети (Вы сказали, что только Трафик HTTP позволяется), или Вы устанавливаете http модуль и Apache на сервере, размещающем Ваш сервер SVN.
Ладно, эта тема немного устарела, но поскольку я нашел ее в google и у меня есть решение, это может быть кому-то интересно:
В основном (конечно) это возможно не на каждом http прокси, но работает на прокси, позволяющих http connect на порт 3690. Этот метод используется http прокси на порту 443 для обеспечения безопасных https соединений. Если ваш администратор настроил прокси на открытие порта 3690 для http-соединения, вы можете настроить локальную машину на создание туннеля через прокси.
Мне просто нужно было проверить некоторые файлы с svn.openwrt.org в сети нашей компании. Простым решением для создания туннеля является добавление следующей строки в /etc/hosts
127.0.0.1 svn.openwrt.org
После этого вы можете использовать socat для создания tcp туннеля к локальному порту:
while true; do socat tcp-listen:3690 proxy:proxy.at.your.company:svn.openwrt.org:3690; done
Вы должны выполнить команду от имени root. Она открывает локальный порт 3690 и при подключении создает туннель к svn.openwrt.org на том же порту.
Просто замените порт и адреса серверов по своему усмотрению.