Как инициализировать новый проект Scala в sbt, Eclipse и github, чтобы он все играл вместе...
Как инициализировать новый проект Scala в sbt, Eclipse и github
Ответ 1
Новый проект Scala обычно требует настройки для sbt, eclipse (если вы так выбираете) и github, чтобы все работало вместе. После того, как вы потратили некоторое время на эту настройку, это может помочь получить этот список для выравнивания этих 3 инструментов/сервисов до тех пор, пока более простые способы недоступны. Последует ряд шагов, которые работают для меня. Предполагается, что в eclipse установлен плагин Scala IDE.
- Создайте новый репо в Github.
- Определите местоположение каталога для нового проекта
- В eclipse используйте представление Git Repositories View для импорта репозитория Github в это место. В качестве альтернативы вы можете использовать для этого командную строку Git.
- Найдите то же место, которое вы выбрали для проекта, и запустите
sbt eclipse
. Это гарантирует, что eclipse сможет обрабатывать структуру проекта sbt, так что ваш проект может быть построен с помощью sbt, а также быть понятным для eclipse. Еслиsbt eclipse
не работает, плагин sbt eclipse, вероятно, не установлен в sbt - установить его. - В eclipse используйте
File --> Import --> General --> Existing Projects into Workspace
, выбрав это же местоположение, чтобы eclipse построил свою структуру проекта для файловой структуры, только что подготовленной sbt. -
Сделайте Git игнорировать все, кроме ядра вашего нового проекта, обновив файл .gitignore, чтобы игнорировать файлы eclipse и sbt. Кажется, что в настоящее время это нормально.
*.class *.log # sbt specific dist/* target/ lib_managed/ src_managed/ project/boot/ project/plugins/project/ # Scala-IDE specific .scala_dependencies # Eclipse specific .project .classpath .cache
Теперь вы должны иметь возможность запускать проект в eclipse и в sbt, а также совершать и нажимать изменения кода через git. Чтобы увидеть пустую прогон проекта, который на этом этапе может иметь смысл, вы можете добавить класс Scala в eclipse к нему, содержащий только следующий код. Обратите внимание, что источники Scala обычно должны находиться под src/main/scala. Если этот путь еще не существует, создайте его, например. mkdir -p src/main/scala
в Unix.
object hello {
def main(args: Array[String]) {
println("Main starting")
}
}
Или, альтернативно, только этот код:
object app extends App {
println("Application starting")
}
Теперь он должен работать. Необходимо отказаться от того, что будущие версии eclipse, sbt и т.д. Могут сделать это устаревшим. Если это неверно в вашей среде, вы можете добавить лучший ответ.