Установите sbt на ubuntu
Я установил sbt на Ubuntu.
:~/bin/sbt/bin$ ls
classes sbt sbt-launch.jar target
jansi.jar sbt.bat sbt-launch-lib.bash win-sbt
Однако, когда я пытаюсь запустить sbt (из того же каталога, где находится sbt), он не работает:
No command 'sbt' found, did you mean:
Command 'skt' from package 'latex-sanskrit' (universe)
Command 'sb2' from package 'scratchbox2' (universe)
Command 'sbd' from package 'cluster-glue' (main)
Command 'mbt' from package 'mbt' (universe)
Command 'sbmt' from package 'atfs' (universe)
Command 'lbt' from package 'lbt' (universe)
Command 'st' from package 'suckless-tools' (universe)
Command 'sb' from package 'lrzsz' (universe)
Я новичок в Linux, и я понятия не имею, как решить эту проблему.
Ответы
Ответ 1
Кажется, вы установили zip-версию sbt, и это нормально. Но я предлагаю вам установить собственный пакет debian, если вы на Ubuntu. Так мне удалось установить его на Ubuntu 12.04. Проверьте это здесь:
http://www.scala-sbt.org/release/docs/Installing-sbt-on-Linux.html
Или просто прямо загрузите его из здесь.
Ответ 2
Самый простой способ установки SBT на ubuntu - это пакет deb
, предоставляемый Typesafe.
Выполните следующие команды оболочки:
-
wget http://apt.typesafe.com/repo-deb-build-0002.deb
-
sudo dpkg -i repo-deb-build-0002.deb
-
sudo apt-get update
-
sudo apt-get install sbt
И все готово!
Ответ 3
Не найдена команда sbt
Говорят, что sbt
не на вашем пути. Попытайтесь запустить ./sbt
из ~/bin/sbt/bin
или где бы исполняемый файл sbt
удостоверился, что он работает правильно. Также убедитесь, что у вас есть разрешения на выполнение для исполняемого файла sbt
. Если это работает, добавьте ~/bin/sbt/bin
к вашему пути и sbt
должен запускаться из любого места.
Смотрите question о добавлении каталога в свой путь.
Чтобы проверить правильный путь , используйте команду which
в LINUX. Результат будет выглядеть примерно так:
$ which sbt
/usr/bin/sbt
Наконец, для проверки sbt
выполняется попытка запустить sbt -help
или аналогично. Результат с -help будет выглядеть примерно так:
$ sbt -help
Usage: sbt [options]
-h | -help print this message
...
Ответ 4
В качестве альтернативного подхода вы можете сохранить SBT Extras script в файл с именем sbt.sh и установить разрешение на выполнение. Затем добавьте этот файл на свой путь или просто поместите его в каталог ~/bin.
Бонус здесь заключается в том, что он будет загружать и использовать правильную версию SBT в зависимости от ваших свойств проекта. Это приятное удобство, если вы склонны компилировать проекты с открытым исходным кодом, которые вы извлекаете из GitHub и других.
Ответ 5
Я предполагаю, что каталог ~/bin/sbt/bin не находится в вашем PATH.
Чтобы выполнить программы или сценарии, находящиеся в текущем каталоге, вам нужно префикс команды с. /, как в:
./sbt
Это функция безопасности в Linux, поэтому для предотвращения переустановки системных команд (и других программ) вредоносной стороной выпадающий файл в вашем домашнем каталоге (например). Представьте себе script, называемый 'ls', который отправляет ваш файл /etc/passwd третьей стороне перед выполнением команды ls... Или тот, который выполняет 'rm -rf.'...
Тем не менее, если вам не нужен что-то конкретное из самого последнего исходного кода, вам лучше всего сделать то, что парадигматика сказала в его посте, и установить его из репозитория Typesafe.