Clojure Light Tableクライアント - サーバーの謎のアプローチ
-
22-12-2019 - |
質問
Ubuntu-Hosted Nreplに接続されているMac上のライトテーブルを使用して新しいプログラム/ Project.cljを作成する方法を設定する方法を設定できますか。誰かが私のアプローチが何であるべきか、そして私が間違っているのかを理解するのを助けることができますか?
私は、VirtualBoxに、VirtualBoxにLeiningen、Pedestal、およびPedestal 'HelloWorldのサンプルプログラム、ブラウザに表示されています。HelloWorldプログラムを実行するのと同じRelpに接続できません。サーバーサイドオブジェクトへのクライアント側のアクセスまたはコントロールがありません。
私のMacホストLTからClient-Server CloJure開発を行い、私が返信で表示できるサーバーサイドプログラムの作成をしたいです。
この分野で直感的なLTを見つけられない、そして私が読むことだけが既存のプロジェクト/ Relpに接続することを提案します。クライアントから新しいオブジェクトを作成したいのですが
解決
あなたが物事のサーバー側について主に話していると仮定すると(まだClojurescriptについてはあまり知らない)、ここでは、リモートRelpに対して対話的に新しいプロジェクトとコードを設定する方法です。
- VMの
lein new project-name
- Project.CLJを設定する方法を設定します。 依存関係を含める必要があります。
- VMでRelpを起動し、ポート番号 に注意してください。
- バージョン管理(git)にコードをコミットします。
- checkout Mac OSXのLightTableで編集するための同じコードベースを参照してください。
- リモートに接続します。
- core.cljを開くか、新しいネームスペースファイルを作成してハッキングを開始します。
- コードスニペットまたはファイル全体を評価します。
これを予測する潜在的な問題がいくつかあります。まず、依存関係を追加するたびに、バージョン管理に変更をコミットし、VMの作業コピーを同期させ、Relpを再起動し、リモートREPLにライトテーブルを再接続する必要があります。
秒では、プロジェクトが数個の名前空間を超えて増加するにつれて問題があるかもしれません。私はあなたのネームスペースがあなたのプロジェクトから別のネームスペースを必要とするならば、リモートの返信プロセスはそれをローカルクラスパスのロードオフしようとします(私は思う)。依存関係があるか変更されている場合は、LightTableがワイヤー上に必要な名前空間を送信するのに十分スマートであるとは思わない。それを試してみて、実際の行動が何であるか教えてください。