Clojure Light Table Client-Server Подход за загадкой
-
22-12-2019 - |
Вопрос
Как я могу настроить его, так что я могу использовать световую таблицу на Mac, подключенный к размещению Ubuntu Nrepl, и создать новую программу / Project.clj?Кто-нибудь может помочь мне понять, какой должен быть мой подход, а где я не так?
У меня есть сервер Ubuntu, в VirtualBox, наряду с Leiningen, Pedestal и программой образца Pedestal 'HellowOrld', которые отображаются в браузере.Я просто не могу подключиться к той же записи, который запускает программу HellowOrld.У меня нет доступа к клиентам или контролю на стороне сервера.
Я хочу сделать разработку Clojure Client-Server с моего Mac-хоста LT, создавая серверные программы, которые я могу просматривать в REPL.
Я не нахожусь, чтобы быть интуитивно понятным в этой области, и советы, которые я прочитал, только говорит о том, что LT будет подключаться к существующему проекту / репре.Я хочу создать новые объекты, от клиента
Решение
Предполагая, что вы разговариваете в основном об стороне сервера (пока не знаю о CloJuescript), вот как вы настроили новый проект и код интерактивно на дистанционном порядке.
- Генеракодицетагкод в вашу виртуальную машину.
- Установить ваш проект. Круг, как вы хотите. Вы должны включать зависимости!
- Запустите REPL в VM и обратите внимание на номер порта
- Зафиксируйте свой код для контроля версий (Git).
- Оформить заказ ту же кодовая база для редактирования в Lighttable в Mac OSX.
- Подключиться к удаленному reft.
- Открыть core.clj или создайте новый файл пространства имен и начать взлом.
- Оцените свои фрагменты кода или весь файл.
Есть пара потенциальных проблем, которые я предвидел с этим. Во-первых, в любое, когда вы добавляете зависимость, вам нужно будет совершить изменения в управлении версиями, синхронизируйте свою рабочую копию VM, перезапустите reft, и повторно подключите LightTable к удаленному репрею.
Во-вторых, у вас могут быть проблемы, поскольку проект растет за пределами нескольких пространств имен. Я верю, что если ваше пространство имен требует другого пространства имен из вашего проекта, процесс удаленного удаления REFR (я думаю), попробуйте загрузить его в местном классе. Если зависимость не там или изменилась, я не думаю, что Lighttable достаточно умна, чтобы отправить необходимые пространства имен на провод. Попробуйте и дайте нам знать, что такое фактическое поведение.