問題タブ [boot-clj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
clojure - 起動: ハンドラ + cljs のリロードでクラスパスから非ルート ディレクトリを提供します
leiningen プロジェクトを起動するように変換しようとしました: https://github.com/borkdude/lein2boot。
serve タスクを使用してハンドラーを提供します。ハンドラーは API を提供し、ファイルも提供します。reload タスクを使用して、javascript をリロードできるようにしたいと考えています。
リロード タスクは完全なリソース パス ( ) を使用して変更された JavaScript をブラウザーに送信するため、HTML と JavaScript をリソース ディレクトリ (この例では "assets") のルートに配置する必要がありました/main.js
。これは(resources "/" {:root ""})
、Compojure でクラスパスのルートも提供する必要があることを意味します。これの問題は、誰でもクラスパス全体から任意のファイルを要求できることです。
javascript をassets/public/main.js
public directory: に再配置してサービスを提供すると(resources "/" {:root "public"})
、「/main.js」でファイルをリクエストできますが、リロード タスクはブラウザに「/public/main.js」からファイルをリロードするように通知します。 404。
どうすればこの問題を解決できますか?
clojure - Boot (clojure) で github/local 依存関係を追加する方法
たとえば、既存の clojar をフォークして拡張し、プロジェクトで使用したいと考えています。
clojars/mavenにプッシュせずにこれを行うにはどうすればよいですか?
両方のオプションに興味があります: github へのリンクとローカル パス。
ありがとう!
UPD
私が望むのは、いくつかの既存のClojureプロジェクトを依存関係として含めることです.Ruby gemが許可するのと同様です。これはブートで可能ですか?または、常に Java にコンパイルする必要がありますか?
clojure - Clojure: 特定の名前空間で repl を起動する
boot-clj がインストールされており、外部エディターで .clj ファイルを編集できるようにしたいと考えています。また、.clj ファイルで変更した関数を呼び出すことができるコマンド ライン REPL を個別に実行したいと考えています。特別なリロード コマンドは必要ありません。
もう 1 つのことは、名前空間を含めるためにコマンドを手動で入力する必要がないことです。名前空間に移動するスクリプトを実行するだけで、既存の関数をすぐに呼び出すことができます。
ファイル名:
ファイルの内容の一部:
REPL に直接アクセスして、必要な(my-range 0 3)
結果が得られるかどうかを確認したいと思います。
これのセットアップは何ですか?実行する必要があるスクリプト ファイルはどのようなものですか?
私の現在の理解では、答えは次のようになります。
maven - Maven 以外のコードを boot-clj/boot に追加するにはどうすればよいですか?
App Engine での Clojure の開発に取り組みました。次に、 bootを使用して同じ機能を複製しようとしました。ただし、ブート プロジェクトに Google App Engine (Maven 以外) のコードを含める方法がわかりません。この点を乗り越えるための助けをいただければ幸いです。
以下のコードはすべてここにホストされています
現在稼働中の作品はこちらproject.clj
build.boot
これは、以前の に基づいて、現在取り組んでいる壊れたものですproject.clj
。
で失敗します
明らかに、コードboot
を取得する方法がわかりません。の世界では、Maven 以外のプロジェクトをローカル リポジトリにインストールする方法に関して (記事で) 行ったcom.google.appengine
手順がありました。App Engine Jar はまだローカル リポジトリにあるはずですが、起動時に認識されないようです。ブート プロジェクト内で appengine jar を表示するにはどうすればよいですか?lein
lein localrepo install ...
vim - boot-clj の監視タスクでファイルを無視する方法はありますか?
私は clojurescript プロジェクトで boot を使用していますが、これまでのところ開発フローは非常にスムーズです。しかし、私を悩ませていることが1つあります。
私はエディタとして VIM を使用しており、VIM はバッファ用の一時ファイルを作成します~
。ファイルを編集するたびに、vim はバッファ用の一時ファイルを作成し、watch
ブートの組み込みタスクを使用しているため、実際のファイルを保存していなくてもリロードがトリガーされます。
これは私のブート タスクの定義です。
watch
で終わるファイルを無視するようにタスクを構成したい~
ので、意味のあるファイルを保存したときにのみリロードがトリガーされます。出来ますか?他の解決策はありますか?
clojure - boot.properties にはどのような情報が必要ですか?
Boot を使用するプロジェクトの Clojure バージョンを指定したいと考えています。Boot Wikiによると、これを行う方法は、プロジェクト ルートBOOT_CLOJURE_VERSION
のファイルに値を指定することです。boot.properties
だから私はそれをしました:
それはうまくいくようです:
ただし、同じwikiページでは、次のようにboot.properties
ファイルを作成するように具体的に述べています。
これにより、最初にコメントのように見える 2 行が追加され、最後に Boot バージョンを指定する行が 1 行追加されます。プロジェクトのブート バージョンを指定することに問題はありませんが、wiki ページではそれが必要であるかのように聞こえます。
注:ファイルを使用する場合
boot.properties
、ファイルは両方の変数を指定する必要があるため、プロジェクトを特定のブート バージョンに固定する必要もあります。
boot.properties
これらの 3 行を省略しても問題が発生しないように見えるのに、これらの 3 行を追加するようにページに具体的に記載されている理由について、私は少し混乱しています。さらに、リビジョン管理を使用している場合は、タイムスタンプを に入れる必要はないと思いますboot.properties
。これらの行を省略してもよろしいですか? そうでない場合、なぜそれらが必要なのですか?