2015-02-08 8 views
1

Я хочу, чтобы клонировать удаленный репозиторий как часть моей сборки, поэтому добавил зависимость в моем build.sbt этого пути -SBT мерзавец клон висит для частной репо

val packagemain = project.in(file(".")).dependsOn(uri("https://github.com/xyz/abc.git")) 

У меня есть кэширование настройки моего GitHub учетные данные для клонирования репозиториев через HTTPS, следуя инструкциям на странице this. Это работает, то есть когда я клонирую это репо вручную, он делает это, не спрашивая имя пользователя/пароль.

Однако, когда я запускаю SBT, он просто висит после следующих утверждений на консоли -

[info] Loading global plugins from /Users/bharadwaj/.sbt/0.13/plugins 
[info] Loading project definition from /Users/bharadwaj/xyz/project/project 
[info] Loading project definition from /Users/bharadwaj/xyz/project 
[info] Loading project definition from /Users/bharadwaj/project/project 
[info] Loading project definition from /Users/bharadwaj/project 
Cloning into '/Users/bharadwaj/.sbt/0.13/staging/c682e5428a4ee10acbaf/abc'... 

Am использованием SBT версии 0.13.5, Git версии 2.0.4 на Mac-OSX.

Я попытался войти в каталог промежуточной подготовки SBT и попробовать «git pull» - он делает это без каких-либо проблем. Его единственный, когда клонирование через SBT

+0

Это работает, если вы используете «[email protected]: xyz/abc.git» вместо клонирования над «https»? – sschaef

+0

Nope. I get => Caused by: java.net.URISyntaxException: Неверный символ в имени схемы по индексу 3: [email protected]: abc/xyz.git – Bharadwaj

ответ

3

Я думаю, что доступ к https://github.com/xyz/abc.git будет перенаправлен на https://github.com/xyz/abc с 301 перемещением навсегда. 301, вероятно, обманывает sbt.

Попробуйте использовать SSH URL, например

ssh://[email protected]/xyz/abc.git 

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

+0

сделал изменение, и более ранняя ошибка исчезла. однако теперь sbt пытается разрешить проект зависимости как проект ivy/maven, ищущий pom/ivy и т. д. Реплика github, которую я пытаюсь вытащить, не является репозиторием кода. Его просто некоторые простые файлы. Как я могу сказать sbt просто загрузить это github-репо, не рассматривая его как зависимость от кода/jar? – Bharadwaj

+0

Я не понимаю, что вы пытаетесь сделать. После сборки, где вы хотите, чтобы эти «простые файлы» закончились? Внутри банки как ресурсы или что-то еще? Также могу ли я спросить, что находится в простых файлах и почему это необходимо для вашей сборки? –

+0

См. Также http://stackoverflow.com/questions/11065064/copying-files-using-sbt –

Смежные вопросы